When I try to change the value of a local variable in a test case the change does not appear. I then am unable to save getting the following error.
Steps to reproduce:
* open variables in test case
* try renaming the local variable → observe that variable is not changed
* try saving the test case → observe that you get the error above.
I just tried a fresh install of katalon and that seems to have fixed the issue for me. This may still be a problem for people who have updated their katalon without a fresh install. Thanks
here the log… i try to delete a local variable in a test case
!ENTRY org.eclipse.e4.ui.workbench 4 0 2018-12-11 08:51:57.036
!MESSAGE
!STACK 0
org.eclipse.core.commands.ExecutionException: While executing the operation, an exception occurred
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:496)
at com.kms.katalon.composer.components.operation.OperationExecutor.executeOperation(OperationExecutor.java:44)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:181)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:185)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:189)
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart.removeVariables(TestCaseVariablePart.java:437)
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart.access$1(TestCaseVariablePart.java:436)
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart$2.widgetSelected(TestCaseVariablePart.java:152)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:249)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4418)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4236)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3824)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at com.kms.katalon.core.application.Application.internalRunGUI(Application.java:120)
at com.kms.katalon.core.application.Application.runGUI(Application.java:105)
at com.kms.katalon.core.application.Application.start(Application.java:63)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:32)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
Caused by: java.lang.NullPointerException
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart.setDirty(TestCaseVariablePart.java:454)
at com.kms.katalon.composer.testcase.ast.variable.operations.DeleteVariableOperation.execute(DeleteVariableOperation.java:79)
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:488)
… 37 more
The exact same issue is still present for all our team members.
Only we do not get it when trying to rename the local variable but while trying to change its value. If you insist, in 10 times one time the value will get saved.
Please see attached video for exact UI actions: http://take.ms/EUJya
Katalon Version: 6.1.0 Build: 1
Katalon log file details:
!ENTRY org.eclipse.e4.ui.workbench 4 0 2019-04-19 16:38:36.152
!MESSAGE
!STACK 0
org.eclipse.core.commands.ExecutionException: While executing the operation, an exception occurred
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:496)
at com.kms.katalon.composer.components.operation.OperationExecutor.executeOperation(OperationExecutor.java:44)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:181)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:185)
at com.kms.katalon.composer.parts.CPart.executeOperation(CPart.java:189)
at com.kms.katalon.composer.testcase.support.VariableDefaultValueEditingSupport.setValue(VariableDefaultValueEditingSupport.java:86)
at org.eclipse.jface.viewers.EditingSupport.saveCellEditorValue(EditingSupport.java:113)
at org.eclipse.jface.viewers.ColumnViewerEditor.saveEditorValue(ColumnViewerEditor.java:453)
at org.eclipse.jface.viewers.ColumnViewerEditor.applyEditorValue(ColumnViewerEditor.java:309)
at org.eclipse.jface.viewers.ColumnViewerEditor$1.applyEditorValue(ColumnViewerEditor.java:152)
at org.eclipse.jface.viewers.CellEditor$1.run(CellEditor.java:336)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
at org.eclipse.jface.viewers.CellEditor.fireApplyEditorValue(CellEditor.java:333)
at org.eclipse.jface.viewers.CellEditor.focusLost(CellEditor.java:722)
at org.eclipse.jface.viewers.TextCellEditor$4.focusLost(TextCellEditor.java:184)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:144)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4418)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1103)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1084)
at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:2934)
at org.eclipse.swt.widgets.Widget.wmKillFocus(Widget.java:1961)
at org.eclipse.swt.widgets.Control.WM_KILLFOCUS(Control.java:5180)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4833)
at org.eclipse.swt.widgets.Text.windowProc(Text.java:2704)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5123)
at org.eclipse.swt.internal.win32.OS.BringWindowToTop(Native Method)
at org.eclipse.swt.widgets.Decorations.bringToTop(Decorations.java:231)
at org.eclipse.swt.widgets.Shell.open(Shell.java:1270)
at org.eclipse.jface.window.Window.open(Window.java:790)
at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:396)
at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:424)
at org.eclipse.jface.dialogs.MessageDialog.openError(MessageDialog.java:486)
at com.kms.katalon.composer.testcase.parts.TestCaseCompositePart.save(TestCaseCompositePart.java:629)
at com.kms.katalon.composer.handlers.SaveHandler.execute(SaveHandler.java:47)
at com.kms.katalon.composer.components.impl.handler.AbstractHandler.execute(AbstractHandler.java:49)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
at sun.reflect.GeneratedMethodAccessor222.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:494)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:488)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:286)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:507)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:558)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:378)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:324)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:86)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1270)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1078)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1103)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1088)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1130)
at org.eclipse.swt.widgets.Text.sendKeyEvent(Text.java:1789)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1126)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1547)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4918)
at org.eclipse.swt.widgets.Text.WM_CHAR(Text.java:2722)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4799)
at org.eclipse.swt.widgets.Text.windowProc(Text.java:2704)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5110)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2552)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3822)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at com.kms.katalon.core.application.Application.internalRunGUI(Application.java:119)
at com.kms.katalon.core.application.Application.runGUI(Application.java:109)
at com.kms.katalon.core.application.Application.start(Application.java:67)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
Caused by: java.lang.NullPointerException
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart.setDirty(TestCaseVariablePart.java:454)
at com.kms.katalon.composer.testcase.ast.variable.operations.ChangeVariableDefaultValueOperation.changeVariableDefaultValue(ChangeVariableDefaultValueOperation.java:50)
at com.kms.katalon.composer.testcase.ast.variable.operations.ChangeVariableDefaultValueOperation.redo(ChangeVariableDefaultValueOperation.java:44)
at com.kms.katalon.composer.testcase.ast.variable.operations.ChangeVariableDefaultValueOperation.execute(ChangeVariableDefaultValueOperation.java:39)
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:488)
… 96 more
Thank you @kazurayam for the update,
but for me, the issue does not seem to be solved yet.
I have just installed Katalon Studio Version: 6.1.2 Build: 2 and the behavior is exactly the same, the log records the same error I have provided above.
at org.eclipse.equinox.launcher.Main.run(Main.java:1519) Caused by: java.lang.NullPointerException
at com.kms.katalon.composer.testcase.parts.TestCaseVariablePart.setDirty(TestCaseVariablePart.java:454)
It may have something to do with the fact that I have also imported the settings from the previous Katalon version project…
However, for the moment, the workaround @Russ_Thomas has provided seems to help a lot.