我在网站上进行自动注册,但问题是,一旦我进入手机号码,它会发送一个OTP。输入otp后,它会要求输入密码,而且我可以进行注册。如何使用硒web驱动程序自动化OTP?
有没有办法在我进入移动设备后得到OTP代码否? or 我们可以使用硒webdriver自动化OTP吗?
我在网站上进行自动注册,但问题是,一旦我进入手机号码,它会发送一个OTP。输入otp后,它会要求输入密码,而且我可以进行注册。如何使用硒web驱动程序自动化OTP?
有没有办法在我进入移动设备后得到OTP代码否? or 我们可以使用硒webdriver自动化OTP吗?
你可以试试它们中的任何一个:
解决方案1:
第1步:通过USB电话/适配器连接到COM端口。
第2步:调用代码通过smslib.jar获取短信
示例代码获取手机短信:
public void sendSMS() throws Exception{
OutboundNotification outboundNotification = new OutboundNotification();
SerialModemGateway gateway = new SerialModemGateway("modem.com5", "COM5", 9600, "ZTE", "COM5");
gateway.setInbound(true);
gateway.setOutbound(true);
gateway.setSmscNumber("+91XXXXXXXXXX"); // 10-digit Mobile Number
Service.getInstance().setOutboundMessageNotification(outboundNotification);
Service.getInstance().addGateway(gateway);
Service.getInstance().startService();
OutboundMessage msg = new OutboundMessage(ExcelConnect.strSMSTo, ExcelConnect.strSMSText);
Service.getInstance().sendMessage(msg);
System.out.println(msg);
System.out.println(ExcelConnect.strSMSTo + "-" + ExcelConnect.strSMSText);
Service.getInstance().stopService();
Service.getInstance().removeGateway(gateway);
}
第3步:解析短信从所获取的名单得到OTP最新收到短信
。
解决方案2:
步骤1:连接Android手机/ iphone。
第2步:自动化的短信应用无论是在手机,如果其Android - 自动通过appium短信应用程序(或任何其他自动化应用程序),或者如果它的iphone - 自动化的短信应用功能,
得到SMS并解析它以获得OTP
。
解决方案3:
第1步:注册为HTTP短信网关(他们中的大多数提供有偿API调用与很少有免费的API呼吁测试)。
步骤2:调用获取SMS的方法。
第3步:解析消息(按最新收到的短信排序之后),以获得OTP
。
这三种方式可以获得OTP,然后您可以将它发送给您的Web应用程序。
。
解决方案4:
从数据库获取OTP,如果它的内部应用程序,或者如果它可以访问。
。
'解决方案3和解决方案4'是最高效的,它不依赖于短信接收平台。
。
解决方案如下合并:
如果'OTP'代码存储在数据库中,则很容易自动化。你可以使用sql连接并获取otp代码。
也许你可以试试这个,http://smsenabler.com/ –
你没有输入手机后,等到SMS消息转发到您的计算机。然后使用该消息进行下一步。但是设置所有的东西可能很烦人。 –
不特定于硒,但您可以设置开发和生产项目环境,并且可以在设置环境为开发时跳过所有otp验证。 – saurabh