时间故障问题 - Katalon
Time Failure Issue - Katalon
我在互联网上找到了时间失败问题的解决方案(不添加任何随机延迟),但是每次我将它添加到我的代码中时都会出错。
这里是错误:
在 account/Logging 中测试 Cases/Logging - 正确的详细信息失败,因为(的)(堆栈跟踪:groovy.lang.MissingPropertyException:没有这样的 属性:G_Timeout_Small class: internal.GlobalVariable
在 groovy.lang.MetaClassImpl.invokeStaticMissingProperty(MetaClassImpl.java:1004)
在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1859)
在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1835)
在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:3735)
在 org.codehaus.groovy.runtime.callsite.ClassMetaClassGetPropertySite.getProperty(ClassMetaClassGetPropertySite.java:51)
在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:296)
在 Script1543314158625.run(Script1543314158625.groovy:39)
在 com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:183)
在 com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:108)
在 com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:294)
在 com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:285)
在 com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:264)
在 com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:256)
在 com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:200)
在 com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:99)
在 com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:90)
在 com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(未知来源)
在 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:149)
在 TempTestCase1543410680790.run(TempTestCase1543410680790.groovy:22)
在 groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:263)
在 groovy.lang.GroovyShell.run(GroovyShell.java:518)
在 groovy.lang.GroovyShell.run(GroovyShell.java:507)
在 groovy.ui.GroovyMain.processOnce(GroovyMain.java:653)
在 groovy.ui.GroovyMain.run(GroovyMain.java:384)
在 groovy.ui.GroovyMain.process(GroovyMain.java:370)
在 groovy.ui.GroovyMain.processArgs(GroovyMain.java:129)
在 groovy.ui.GroovyMain.main(GroovyMain.java:109)
在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
在 java.lang.reflect.Method.invoke(Method.java:498)
在 org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:109)
在 org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:131)
)
测试Cases/Logging进入account/Logging中-右details.run:39
这是我的代码:
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import internal.GlobalVariable as GlobalVariable
'Opening the browser.'
WebUI.openBrowser('')
'Importing account details from file.'
def plik = new File('Config.txt')
'Importing account details from file.'
def lines = plik.readLines()
WebUI.waitForPageLoad(0)
'Loading the page.'
WebUI.navigateToUrl(lines[0])
'Typing the account name.\n'
WebUI.setText(findTestObject('Logging into the account/account area'), lines[1])
'Typing the password'
WebUI.setText(findTestObject('Logging into the account/password area'), lines[2])
'Logging into the website with the logging button'
WebUI.click(findTestObject('Logging into the account/log button'), FailureHandling.STOP_ON_FAILURE)
WebUI.waitForPageLoad(GlobalVariable.G_Timeout_Small)
'Verifying wether logged or not.'
WebUI.verifyElementPresent(findTestObject('Logging into the account/main div after being logged'), 0)
'Closing the browser.'
WebUI.closeBrowser()
以及我找到它的地方:
https://docs.katalon.com/katalon-studio/tutorials/solving_common_issue_wait_time.html
有人知道为什么会出现该错误吗?提前“是的,有全局变量的导入库。
您需要为GlobalVariable.G_Timeout_Small
设置初始值。
转到执行配置文件("Profiles" 在 Katalon Sudio window 右侧 "Tests Explorer" 的顶部)并将 G_Timeout_Small
设置为初始(数字)值。
我在互联网上找到了时间失败问题的解决方案(不添加任何随机延迟),但是每次我将它添加到我的代码中时都会出错。
这里是错误:
在 account/Logging 中测试 Cases/Logging - 正确的详细信息失败,因为(的)(堆栈跟踪:groovy.lang.MissingPropertyException:没有这样的 属性:G_Timeout_Small class: internal.GlobalVariable 在 groovy.lang.MetaClassImpl.invokeStaticMissingProperty(MetaClassImpl.java:1004) 在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1859) 在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1835) 在 groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:3735) 在 org.codehaus.groovy.runtime.callsite.ClassMetaClassGetPropertySite.getProperty(ClassMetaClassGetPropertySite.java:51) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:296) 在 Script1543314158625.run(Script1543314158625.groovy:39) 在 com.kms.katalon.core.main.ScriptEngine.run(ScriptEngine.java:183) 在 com.kms.katalon.core.main.ScriptEngine.runScriptAsRawText(ScriptEngine.java:108) 在 com.kms.katalon.core.main.TestCaseExecutor.runScript(TestCaseExecutor.java:294) 在 com.kms.katalon.core.main.TestCaseExecutor.doExecute(TestCaseExecutor.java:285) 在 com.kms.katalon.core.main.TestCaseExecutor.processExecutionPhase(TestCaseExecutor.java:264) 在 com.kms.katalon.core.main.TestCaseExecutor.accessMainPhase(TestCaseExecutor.java:256) 在 com.kms.katalon.core.main.TestCaseExecutor.execute(TestCaseExecutor.java:200) 在 com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:99) 在 com.kms.katalon.core.main.TestCaseMain.runTestCase(TestCaseMain.java:90) 在 com.kms.katalon.core.main.TestCaseMain$runTestCase$0.call(未知来源) 在 org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:149) 在 TempTestCase1543410680790.run(TempTestCase1543410680790.groovy:22) 在 groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:263) 在 groovy.lang.GroovyShell.run(GroovyShell.java:518) 在 groovy.lang.GroovyShell.run(GroovyShell.java:507) 在 groovy.ui.GroovyMain.processOnce(GroovyMain.java:653) 在 groovy.ui.GroovyMain.run(GroovyMain.java:384) 在 groovy.ui.GroovyMain.process(GroovyMain.java:370) 在 groovy.ui.GroovyMain.processArgs(GroovyMain.java:129) 在 groovy.ui.GroovyMain.main(GroovyMain.java:109) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:109) 在 org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:131) )
测试Cases/Logging进入account/Logging中-右details.run:39
这是我的代码:
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import com.kms.katalon.core.checkpoint.Checkpoint as Checkpoint
import com.kms.katalon.core.cucumber.keyword.CucumberBuiltinKeywords as CucumberKW
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords as Mobile
import com.kms.katalon.core.model.FailureHandling as FailureHandling
import com.kms.katalon.core.testcase.TestCase as TestCase
import com.kms.katalon.core.testdata.TestData as TestData
import com.kms.katalon.core.testobject.TestObject as TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import internal.GlobalVariable as GlobalVariable
'Opening the browser.'
WebUI.openBrowser('')
'Importing account details from file.'
def plik = new File('Config.txt')
'Importing account details from file.'
def lines = plik.readLines()
WebUI.waitForPageLoad(0)
'Loading the page.'
WebUI.navigateToUrl(lines[0])
'Typing the account name.\n'
WebUI.setText(findTestObject('Logging into the account/account area'), lines[1])
'Typing the password'
WebUI.setText(findTestObject('Logging into the account/password area'), lines[2])
'Logging into the website with the logging button'
WebUI.click(findTestObject('Logging into the account/log button'), FailureHandling.STOP_ON_FAILURE)
WebUI.waitForPageLoad(GlobalVariable.G_Timeout_Small)
'Verifying wether logged or not.'
WebUI.verifyElementPresent(findTestObject('Logging into the account/main div after being logged'), 0)
'Closing the browser.'
WebUI.closeBrowser()
以及我找到它的地方: https://docs.katalon.com/katalon-studio/tutorials/solving_common_issue_wait_time.html
有人知道为什么会出现该错误吗?提前“是的,有全局变量的导入库。
您需要为GlobalVariable.G_Timeout_Small
设置初始值。
转到执行配置文件("Profiles" 在 Katalon Sudio window 右侧 "Tests Explorer" 的顶部)并将 G_Timeout_Small
设置为初始(数字)值。