如何暂停selenium web驱动程序以进行用户操作

时间:2018-01-15 20:23:27

标签: selenium selenium-webdriver

我想自动化用户必须以特定间隔输入OTP的应用程序。是否有可能使用Selenium自动化?

4 个答案:

答案 0 :(得分:0)

自动化测试执行 In Pogress 时,理想情况下不应有手动干预

如果输入 OTP Usecase的其中一个步骤,它也应该自动化。

  

注意 OTP 可以发送到电子邮件地址,并且可以进行验证。

答案 1 :(得分:0)

如果您正在Dev环境中运行测试,一种可能的解决方案是请求开发人员为OTP设置一个常量值,然后使用该值验证该字段。

更复杂的解决方案是从消息框中获取值,其中包括appium概念或从邮箱中读取OTP值

答案 2 :(得分:0)

您不必使用Selenium处理此问题,依赖编程语言。当用户通过selenium发送密钥输入表单并继续自动化时,显示一个框/消息。除非您的页面过期,否则Selenium实际上会等待。下面的代码可以提供帮助。

driver.findElement(By.id("username")).sendKeys("username");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String otp;   
System.out.println("Please Enter the OTP Code:: ");
otp = br.readLine();
System.out.println("Entered  OTP Code is:: "+otp);
driver.findElement(By.id("password")).sendKeys("otp");

答案 3 :(得分:0)

假设您要在此页面输入您的OTP,

  

www.your-page.com/OTP

一旦此页面生成,请使用new Scanner(System.in).nextLine

手动等待控制台上任何键的用户输入。在控制台上按Enter键之前,您可以在页面中插入OTP(如果有的话,按提交),然后按任意键即可从控制台恢复执行。

这将创建一个manual-halt-like功能,您可以在此期间执行手动互动。