I'm trying to automate the application using Selenium WebDriver. My application sends sms with confirmation code which is used in turn to confirm the changes on web-page. Could you advise please how can I automate this functionality? Where can I extract the confirmation code sent by sms? Thank you!
Automation the testing of application sending sms
4.9k Views Asked by Luanya At
2
There are 2 best solutions below
0
Artem
On
If you use testRigor system it has built-in way to test SMS and your code would look like this:
click "Sign in"
enter "user" into "Username"
enter "password123" into "Password"
click "Verify me"
check that sms to "+12345678902" is delivered and matches regex "Code\:\d\d\d\d" and save it as "sms"
extract value by regex "(?<=Code\:)[0-9]{4}" from "sms" and save it as "confirmationCode"
enter saved value "confirmationCode" into "code"
click "Continue to Login"
check that page contains text "Welcome, Peter!"
Related Questions in JAVA
- Add image to JCheckBoxMenuItem
- How to access invisible Unordered List element with Selenium WebDriver using Java
- Inheritance in Java, apparent type vs actual type
- Java catch the ball Game
- Access objects variable & method by name
- GridBagLayout is displaying JTextField and JTextArea as short, vertical lines
- Perform a task each interval
- Compound classes stored in an array are not accessible in selenium java
- How to avoid concurrent access to a resource?
- Why does processing goes slower on implementing try catch block in java?
- Redirect inside java interceptor
- Push toolbar content below statusbar
- Animation in Java on top of JPanel
- JPA - How to query with a LIKE operator in combination with an AttributeConverter
- Java Assign a Value to an array cell
Related Questions in TESTING
- How does Robot's Telnet library work?
- Behat doesn't load extensions?
- Load additional CONFIG file with values
- rails controller test failing non-deterministicly wrt state leak (I think)
- Ordering tests using trial twisted
- Unexcepted failed Gavel/Dredd test
- How to use Jasmine and CucumberJS with Protractor
- Django login tests session problems
- How to mock specific RequireJs dependencies while unit testing
- Test case for WCF REST Service
- how to test this business logic
- Protractor - How to get first or last CHILD value
- Factory Not Registered in rspec but found in console
- Pick out certain lines from files
- Selenium stops running after click() function runs
Related Questions in SELENIUM-WEBDRIVER
- How to access invisible Unordered List element with Selenium WebDriver using Java
- Fail Upload file in Selenium webdriver using Robot class
- How do I use DataProvider with Apache POI
- I am not able to get Exact frame and not able to select exact element using selenium web drive
- Selenium C#: Store element's position on graph as a variable
- Selenium webdriver for handling dynamic ckeditors
- Easy to use multi browser automation tool for record, parameterize, debug, batch run of suites and results report
- Not able to select option from dropdown box in an android mobile application
- What can cause `UnreachableBrowserException: Could not start a new session`?
- Click on the 'compose' button in gmail inbox page
- python - selenium change frame not working
- How to select value from dropdown and double click on same selected item in selenium webdriver.?
- Selenium Firefox webdriver does not adopt profile
- Cannot assign an inst variable in Switch "--user-data-dir" in Selenium Wedriver Chrome
- Phantomjs fails when Protractor is run with selenium hub
Related Questions in AUTOMATION
- Installing Teamcity build agent as a user: failed to install the service. selected account does not have enough rights
- Automating Telnet Scripts from .bat with a teamspeak instance
- schedule and automate sqoop import/export tasks
- Dynamic @Test generation in TestNG
- detecting a file downloaded in selenium java
- Can I automate auto-app installation on my Android device?
- C# Program automation - Program hangs/doesn't work
- Saving Excel workbook as PDF gives me an OLE error 800A03EC
- Appium-How to send SMS for login verification purpose during automation test
- How to maximize browser window with helium using Java?
- Appium iOS automation using Java : get element using accessibility Id?
- Looking to run automated jobs in .NET application
- How to click the back navigation button of the browser using helium?
- Firefox automatically choose certificate, without ui dialog
- Test class not found in selected project
Related Questions in SMS
- How to count SMS segments?
- SMS from website using my credit
- How do I receive sms with twilio?
- Appium-How to send SMS for login verification purpose during automation test
- Android SMS Receiver within activity
- Restrict sending message second time in Android
- How to check what sms was sent by me in conversation?
- How to send SMS to mobile phone from java program- Using free APIs or WebServices
- Intercept message from specific number in Ionic Framework
- Twilio: Best method for retrieving media uri for sent sms
- Block SMS Push Notification of a particular number in Android
- SMS feature in C++ for Windows Mobile 6.5
- Load SMS conversation along with contact name
- xCode - Send SMS In-App
- Get text from edit text and put string into smsManager.sendTextMessage
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I suppose you have to test the following scenario:
I suppose that your intention to test just the site behaviour but not functionality of sending and receiving SMS. I also suppose that the confirmation code is not expired.
In order to test just this functionality I suggest to use the predefined scenario. You will take the confirmation code that you have from the manual test and use it in your web site selenium automation. This is good enough to verify described functionality.
In case if the confirmation code has the expiration period I suggest to use the code that developers use in order to build this confirmation code in your method.
The last option (if you don't have access to the development code) - using the mobile automation (like appium) with the mobile simulator in order to receive the confirmation code. In this case the site will send the sms to the mobile simulator (please see this question how to simulate the mobile device number) and your appium code will take it and save in the local file. Then the selenium code will use it. This approach much more complicated but will cover end to end scenario.