Опитваме се да разберем как да извикаме, (0) от groovy скрипт, (1) влизане в уебсайт на селен и след това (2) да извикаме частта за навигация (скрипт), намираща се в друг тестов случай. Пускането на двете независимо работи 100%. По-долу е кодът, който използвам за извикване на двата скрипта от (0), но след като приключи с login.run
, нов браузър се отваря с select.run
и очевидно тестът е неуспешен, защото не е влязъл в системата.
login = testRunner.testCase.testSuite.project.testSuites["Selenium"].testCases["Login"].testSteps["Login_Plat"]
select = testRunner.testCase.testSuite.project.testSuites["Selenium"].testCases["Calculator"].testSteps["GS_Platinum"]
login.run(testRunner, context)
select.run(testRunner, context)
Така че отидох и манипулирах login
, select
(като премахнах кода на webdriver) и кодът на основния скрипт сега изглежда така (изключих импортирания в тази паста):
System.setProperty("webdriver.chrome.driver",testRunner.testCase.testSuite.getPropertyValue("driverPath"))
env = testRunner.testCase.testSuite.getPropertyValue("testEnvDetails1")
WebDriver driver = new ChromeDriver()
driver.get(env)
login = testRunner.testCase.testSuite.project.testSuites["Selenium"].testCases["Login"].testSteps["Login_Plat"]
select = testRunner.testCase.testSuite.project.testSuites["Selenium"].testCases["Calculator"].testSteps["GS_Platinum"]
login.run(testRunner, context)
select.run(testRunner, context)
Намирам това в регистъра на грешките на неуспешния скрипт за влизане (когато стартирам скрипт 0) ERROR:groovy.lang.MissingPropertyException: No such property: driver for class: Script19
така че изглежда, че (1)login
скриптът не използва класа driver
от главния скрипт(0)
Разгледах и тези подобни проблеми, но нашите изглеждаха твърде различни от техните.
selenium webdriver в soapui, предавайки екземпляра на драйвера
Как да предадете контекст от Script към друг клас groovy
Как да дефинирам глобален клас в SoapUI като groovy скрипт ?
и аз много се опитвам да избегна .jar
в ext
dir начин, просто защото искаме да избегнем на всяка цена (най-вече обучение) използването на друга програма за това. Също така е много по-ефективно, ако можем да видим извиквания код, вместо да го импортираме в скрипт, докато уебсайтът се променя.
И трите от тези скриптове са в един и същи проект и тестов пакет, но различни тестови случаи. Това беше направено, защото ще има множество тестови стъпки/скриптове в тестовия случай за влизане с различни начини и подробности за влизане. Използвам самостоятелен сървър на webdriver
soapUI
, вместо да го използвате от вън катоcommand-line
? И защо се опитваш да избегнеш.jar
? - person Rao   schedule 21.01.2016