Develop, execute and automate the test plans for the various product features to identify and isolate the issues.
Develop test plans covering all aspects of the product features, such as functionality, scalability, performance and stability/endurance of the product features.
Take part in functional specification and design reviews to provide critical input for the new features.
Automate the test plan to scale the testing resources.
Work as an integral player in a team that depends on each and everyone working together in a short delivery cycle.
Use all the tools at your disposal to identify and isolate issues in the software.
Skills
Strong Perl, Python and Tcl test automation skills.
Strong working knowledge in the following areas of networking:
Wi-Fi, 3G/4G mobile networking, DHCP, AAA, RADIUS, Diameter, etc.
Experience w/Open Source test tools is a strong plus
BS CS/CE/EE or equivalent plus 6+ years of experience or an MS with 5+ years experience.
Strong written and oral communication skills.
Автотесты работают в связке Jenkins + java + testng + selenium grid.
Иногда возникают какие-то проблемы, вероятно, сетевые, но может быть и проблемы с нехваткой памяти или процессора.
Суть вопроса: как узнать, какая нода виновата?
Например, ошибка:
FAILED CONFIGURATION: @AfterMethod tearDown
org.openqa.selenium.WebDriverException: Session [6dc1eaa8-c208-4d5e-8899-2c17dd2b9b88] was terminated due to FORWARDING_TO_NODE_FAILED
Command duration or timeout: 4 milliseconds
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '2.6.32-431.11.2.el6.x86_64', java.version: '1.6.0_26'
Session ID: 6dc1eaa8-c208-4d5e-8899-2c17dd2b9b88
Driver info: org.openqa.selenium.remote.RemoteWebDriver
Capabilities [{platform=XP, acceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=C:\DOCUME~1\user\LOCALS~1\Temp\scoped_dir2116_21832}, rotatable=false, locationContextEnabled=true, webdriver.remote.sessionid=6dc1eaa8-c208-4d5e-8899-2c17dd2b9b88, version=35.0.1916.153, takesHeapSnapshot=true, cssSelectorsEnabled=true, databaseEnabled=false, handlesAlerts=true, browserConnectionEnabled=false, webStorageEnabled=true, nativeEvents=true, applicationCacheEnabled=false, takesScreenshot=true}]
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:191)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:554)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:569)
at org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:423)
at ru.mamba.fw.WebDriverHelper.stop(WebDriverHelper.java:92)
at ru.mamba.fw.ApplicationManager.stop(ApplicationManager.java:46)
at ru.mamba.tests.TestBase.tearDown(TestBase.java:53)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: Session [6dc1eaa8-c208-4d5e-8899-2c17dd2b9b88] was terminated due to FORWARDING_TO_NODE_FAILED
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '2.6.32-431.11.2.el6.x86_64', java.version: '1.6.0_26'
Driver info: driver.version: unknown
at org.openqa.grid.internal.ActiveTestSessions.getExistingSession(ActiveTestSessions.java:105)
at org.openqa.grid.internal.Registry.getExistingSession(Registry.java:423)
at org.openqa.grid.web.servlet.handler.RequestHandler.getSession(RequestHandler.java:238)
at org.openqa.grid.web.servlet.handler.RequestHandler.process(RequestHandler.java:119)
at org.openqa.grid.web.servlet.DriverServlet.process(DriverServlet.java:83)
at org.openqa.grid.web.servlet.DriverServlet.doDelete(DriverServlet.java:73)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.seleniumhq.jetty7.servlet.ServletHolder.handle(ServletHolder.java:565)
at org.seleniumhq.jetty7.servlet.ServletHandler.doHandle(ServletHandler.java:479)
at org.seleniumhq.jetty7.server.session.SessionHandler.doHandle(SessionHandler.java:225)
at org.seleniumhq.jetty7.server.handler.ContextHandler.doHandle(ContextHandler.java:1031)
at org.seleniumhq.jetty7.servlet.ServletHandler.doScope(ServletHandler.java:406)
at org.seleniumhq.jetty7.server.session.SessionHandler.doScope(SessionHandler.java:186)
at org.seleniumhq.jetty7.server.handler.ContextHandler.doScope(ContextHandler.java:965)
at org.seleniumhq.jetty7.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.seleniumhq.jetty7.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
at org.seleniumhq.jetty7.server.Server.handle(Server.java:349)
at org.seleniumhq.jetty7.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:452)
at org.seleniumhq.jetty7.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:47)
at org.seleniumhq.jetty7.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:884)
at org.seleniumhq.jetty7.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:938)
at org.seleniumhq.jetty7.http.HttpParser.parseNext(HttpParser.java:634)
at org.seleniumhq.jetty7.http.HttpParser.parseAvailable(HttpParser.java:230)
at org.seleniumhq.jetty7.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:66)
at org.seleniumhq.jetty7.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:254)
at org.seleniumhq.jetty7.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599)
at org.seleniumhq.jetty7.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534)
at java.lang.Thread.run(Thread.java:724)
... Removed 15 stack frames
SKIPPED CONFIGURATION: @BeforeMethod setUp
По revision или по Session ID определить ноду невозможно, т.к. Grid Console выдает только вот такую информацию:
Интересует такой вопрос - находится ли кто-то в ситуации, когда хочется управлять процессом, лидить, а не понятно, что для этого делать, как перейти в управленца?!
Хочу понять, на сколько инженерам сейчас актуальна эта тема и нужна соответствующая помощь.
Благодарю и жду ответов. Если личные моменты, пишите в личку!