2016-03-16 120 views
5

我在網站上進行自動註冊,但問題是,一旦我進入手機號碼,它會發送一個OTP。輸入otp後,它會要求輸入密碼,而且我可以進行註冊。如何使用硒web驅動程序自動化OTP?

有沒有辦法在我進入移動設備後得到OTP代碼否? or 我們可以使用硒webdriver自動化OTP嗎?

+2

也許你可以試試這個,http://smsenabler.com/ –

+0

你沒有輸入手機後,等到SMS消息轉發到您的計算機。然後使用該消息進行下一步。但是設置所有的東西可能很煩人。 –

+0

不特定於硒,但您可以設置開發和生產項目環境,並且可以在設置環境爲開發時跳過所有otp驗證。 – saurabh

回答

4

你可以試試它們中的任何一個:

解決方案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'是最高效的,它不依賴於短信接收平臺。

解決方案如下合併:

enter image description here

0

如果'OTP'代碼存儲在數據庫中,則很容易自動化。你可以使用sql連接並獲取otp代碼。

相關問題