1. OpKey Recorder
Soon after the worldwide release of OpKey Personal edition 1.0 we had a Sprint Review Meeting
discussing how hectic the sprint was, what all assumptions went wrong, and what good decisions
made the release possible. We decided that for the next few months, we will only be focusing on
Client Issues and no further Feature Development will be entertained until widely required.
We were happy for the release, and thought that handling the client issues will not be much of a
problem, and we will get enough time to rejuvenate from the recent hectic deadlines & work
timings. A pleasure much awaited by all the IT Professionals.
Just before the Happy Ending of the review meeting, a young lady from the pre-sales team
(probably a new joiner and a fresher) raised a rather rare concern, “OpKey was build for manual
testers to do automation testing with quick authoring and speedy executions. But, I feel, that
manual testers must be well aware of the keywords to author the TestCases, and authoring takes
much more time than the current Selenium IDE. So Can we make TestCase authoring a little bit
faster and seamless?”
We ignored the concern (as we had no idea how to do it then), but our Business Analyst was so
moved by the concern, that he asked me, “Anshuman, what it takes to build a web recorder for
OpKey?” And I was like, “Mmmm, a couple of years, may be”.
“I want the OpKey Recorder in the coming release, which is planned next month…”
So, here was a little concern, raised by a fresher that became a nightmare for the Development
Team. But, the release was planned, and the requirement was crystal clear, “OpKey Recorder in
one month”
I started with the .Net based WebBrowserControl (Embedded IE) but soon realized, that many-asites show up differently on older versions of IE and many-a-users still use IE 6. Then I started
making an Extension for Google Chrome which will tell me about the page events, but was stuck
handling issues with Google’s Security measures and container object handlings.
Then there came the life savior, Selenium IDE itself. The thought of extending Selenium IDE
came from our Business Analyst himself with these backing up his point:
1.
2.
3.
4.
5.
Selenium IDE is OpenSource, so you can hook-in your code-piece in it.
Six years of rich development, bug fixes and new version support.
Huge User base, who are comfortable with the UI &Usability offered by Selenium IDE.
Support of ancient as well as newest HTML standards & controls.
Open Forums, multiple object identifiers etc etc.
So, twenty days of hardwork, and now we are proud to announce that OpKey supports Recording
via Selenium IDE. In addition to Selenium IDE, the Selenium IDE for OpKey supports the
following:
2. 1. It fetches more object properties and element attributes.
2. Create separate entities for TestScripts & ObjectRepositories, to manage them better.
3. Intelligently adds keywords as per the scenario, like SyncBrowser, VerifyPopup and then
HandlePopup.
4. Promotes the usage of more than one property to uniquely identify objects on a
webpage.
5. Redirects runs to the default browser(By using the GlobalVariable feature of OpKey)
6. Creates more user readable scripts, like Click on a button and on a link is actually
recorded as ClickOnButton & ClickOnLink respectively.
OpKey has now become much more usable and user friendly by having the Recorder feature in
the automation tool itself. And now I too feel that record-n-Play is one of the coolest features of
OpKey.
Not only this, we charted out an experimental study with a closed group of users which showed
us that we have reduced the test case creation time by more than 60% and that was a great
achievement in itself. We also figured out generic queries which we believe our end user
community will have, we know testers are inquisitive. So here’s a small FAQ listQ1- Selenium IDE for OpKey, where can I find it?
Download your copy from <link>SourgeForge</link> and drag-drop the xpi file onto your
Mozilla Firefox. It will prompt you to install and then restart it.
Please Note, that the SeleniumIDE for OpKey is OpenSource and the source code is available on
request
Q2- Which version of Selenium IDE is being used?
Currently we are supporting SeleniumIDE version 2.3. We are planning to release the versions
2.2 & 2.4 soon.
Q3- I have a different version of selenium IDE, so will the xpi file work?
Yes, the SeleniumIDE for OpKey must work as it is all together a different Plugin. Although, I
would suggest that you create different Firefox Profiles and install different plugins.
Launch firefox.exe –p from Run Window
Or follow this link: https://support.mozilla.org/en-US/kb/profile-manager-create-and-removefirefox-profiles
Q4- I am not sure I understand the port number which I have to fill, what is it for?
3. A local machine port is needed for the communication of OpKey & SeleniumIDE for OpKey.
You can give any random number ranging from 1 to 65535. The default port(8282) must just
work fine.
Just make sure your firewall or antivirus is not blocking it.
Q5- I added the xpi file, and have followed all steps. But my actions are not getting
recorded by OpKey what to do?
Can you check the following?
1. You have entered the same port number in OpKey Recorder & SeleniumIDE-> Tools->
OpKey Settings
2. You have clicked on Start Recording in OpKey Recorder
3. You have opened SeleniumIDE for OpKey in Firefox and not the SeleniumIDE
Q6- Will this work only for Firefox?
SeleniumIDE only works with Firefox, so, Yes. Although, we plan to integrate our solution with
other recorders as well to support multiple browsers.
You can also ask Firefox to behave as InternetExplorer or GoogleChrome or an
AndroidBrowser. Check out this link: http://www.howtogeek.com/113439/
Q7- So you are saying for each selenium action; there is an OpKey keyword, where can I
find that mapping?
The document is in progress. We shall update it on the website soon.
Q8- Can I add the objects of different test case recording in one Object Repository?
Select the same ObjectRepository for different TestCases while recording.
Q9- Where is the recorder located, I can’t find it?
The red circular button in TestCase.