Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed last year.
Improve this question
I am job searching and am seeing a lot of Selenium requirements in job descriptions lately. I know that Selenium is an automation tool for web testing but what I don't know is how it compares to using AutoIt and Sikuli. I am very familiar with AutoIt and Sikuli tools but not familiar with Selenium as far as enterprise use. I could simply download Selenium and fool around with it but as far as professional experience, I have none.
So my question to automation professionals out there is if I have a good deal of experience in AutoIt and Sikuli, would I be a good fit for a position that deals solely with Selenium?
Have experience only with AutoIt and Selenium .
What I can say about AutoIt -> script written on it are suitable for WIN platform only.
Imagine the situation when you need to run you test (that covers a piece of functionality on a web page) on 2 notes: win note and macBook.
For Win your script be working OK , for Mac it will fail.
OR, a little bit modified: if you need run your script simultaneously on several machines and/or in several browsers. Selenium will fit OK for this.
But for another side: such case like attachment a file on a webPage or any other kinda of attachment - will not work with pure Selenium. AutoIt will handle it nice.
So it was 2 little casees in particular.
In overall, selenium is used for functional UI automation of web application(-s) . And if you have experience of scripting you will be able to adjust your skills.
My recommendation to you - start recording script with SElenium IDE , then export these recorded scripts in testNg , and then try to understand their structure.
Good luck! :)
As someone who has fairly extensive experience with Sikuli and Selenium (but none at all with Autolt), I would say that Sikuli skills are not very transferable to Selenium. The theory side--the logic and algorithmic thinking you'd use to problem solve would be much the same, but the technique of execution are so very different between the two, that if I were doing the hiring, I wouldn't hire a person with no experience in Selenium but vast experience in Sikuli, if there were any reasonable Selemium-experienced people to choose from.
I imagine, though, that if you could demonstrate proficiency, or create and show your own projects that use an array of Selenium skills, that could go a long way to smoothing reservations a hiring company might have...
Take that for what it's worth, esp since I have no experience with Autolt.
Selenium is used for Web-Automation or Web Applications or website related automation.
Autoit can only be used for Windows GUI Automation or Windows based applications. No Image Recognition purely on elements based usage.
Sikuli on the other hand, can be used for automating both i.e. Desktop Apps and Web-Apps. It basically finds the match of the given Image in the screen by using Image Recognition and then you can perform tasks on that like click, double click, input text etc.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
I am looking at creating automation test cases for a VueJS application that will be supported across several different desktop browsers and mobile (iOS and Android) browsers. I have came across several options including Protractor, Test Cafe, Nightwatch, and Cypress. Cypress is only supported with Chrome browsers so I won't be able to use that, and Protractor seems more geared towards testing of Angular applications. So I am looking for feedback from people who have used Test Cafe or Nightwatch.
Questions:
Which of the 2 tools do you find better and why?
What are the pros/cons of one vs. the other? (Selenium Based vs. Not doesn't matter to me)
Does either support mobile browser testing?
Did anyone have any issues with either that stopped you from using it and going with another approach?
I have not used test cafe till now but I have used Nightwatch. It's really a nice framework developed in nodeJS.
Pros:
List item
Built-in test runner- Built-in command line test runner which can run the tests in parallel.
Parallel cross-browser testing- Same test we can run in multiple browsers at the same time
Much better api then selenium webdriver
Inbuilt assertion library
Inbuilt screenshots
Return object- Every method that you call will return an object. We can have a chain of command like open.click.sendkeys.wait.click.select.end
Syntax- looks the easiest and the most readable
It has a very good inbuilt debugging mechanism.
It is extendable- You can write your own custom commands and add custom assertions
10.Grouping tests- You can group test. eg Smoke test, login test etc
It is also supported across several different desktop browsers and mobile browsers (iOS and Android)
Cons: less support
I had experiance with nightwatch js . Its very easy to implement.Its suport all languages like react js, angular js or any scripting language. Only the neagtive side is less support. Another better option is webdriver.io (not selenium webdriver)
Nightwatch is based on selenium. Test Cafe has his own mechanism and have some advantages, like mobile testing and auto waiting mechanism and simpler setup.
I work in a small firm whose product is a relatively simple web-based software. For the last several years we have used Selenium IDE and it's record-and-play functionality. It has delivered 98% of what we need. However, now that Selenium IDE will no longer be working several months from now, we must find an alternative. We considered using Selenium WebDriver, but none of us no know programming and we just don't have the time to all learn it quickly enough to maintain our current testing. So, we are looking for something that has at minimum the following features...
Has record-and-play functionality (as opposed to programming)
Can support multiple web browsers (Firefox, Chrome, IE, Safari)
Can generate reports
Will continue to be supported for years to come
Has either a large user community or good company customer service
Database connect would be nice
Hopefully, we can import our existing Selenium IDE scripts, rather than rewrite them.
We are willing to pay if it's good.
There are literally dozens of options for software and I don't have a clear path to selecting one. Some promising software is...
- Katalon Recorder and Studio. It looks like an excellent replacement for Selenium IDE. But it has small community for help
- QTP - A colleague previously worked with this and recommends it. It looks like an excellent alternative for webdriver, as it allows record and play. But it is very expensive.
Any help is appreciated.
As per your feature requirement here are a couple of viable Selenium IDE alternatives :
Protractor :
Pros :
1. Simple installation. Only a couple of commands needed to install Selenium WebDriver and start testing.
2. Uses JavaScript which is easy to learn with limited programming background.
Cons :
1. Though flexible but still evolving. Setting up the project and the reporting plugins needs a bit of expertise.
2. Requires clear understanding of sync/async behavior.
Katalon Studio :
Pros :
1. No experience required for installation.
2. Unzip the package and ready to go.
3. No additional plug-ins are required.
4. The scripting interface allows an user to switch between the keyword-base table and the code editor.
Cons :
1.Though web automation and mobile automation is achievable API testing module needs more buildup.
Selenium Builder :
Pros :
1. Selenium Builder contains a lot of code from Selenium IDE and Webdriver.
2. The project is getting forked into a modern and a legacy version.
Cons :
1. As of version 40, Firefox requires all extensions to be signed and as it contains code from Selenium IDE and Webdriver it is getting rejected from signing.
2. Getting Selenium Builder into an acceptable state for signing means removing the existing code, which will remove support for Selenium 1.x and support for local playback of Selenium 2.x.
So it's a mix-bag situation and you can always pick one up and drop the other one at your disposal.
QTP I believe has now become UFT (Unified Functional Test) which does have a record option. Unfortunately what you lack in programming, you'll have to make up for in scripting knowledge (VBScript from what I worked with). It's not impossible but would probably take more effort to learn rather than implementing your own free version of Java/Selenium WebDriver. UFT is extremely expensive especially for a small firm which is a per license fee. If I remember right my last job had multiple licenses each $20k a piece.
Hi I have a Swing application to test and I found Sikuli a nice tool to do it, but I am a little worried about the size of the community and if it's being continually developed and it's being used by other companies.
Do you use it?
For what?
Is it stable?
Is it the best tool for the job you needed?
I use it in my company, too.
It can be used quite easily for not too complex gui-tests.
Sikuli was not developed for the last year but development is now increasing again.
Questions in the Sikuli-FAQ section on launchpad are answered fast although the community is not that big.
In my company, Sikuli is used for gui testing which was previously done by human testers.
It saves some time but not everything is automatable with Sikuli, e.g. the OCR functionality is not dependable (but will be updated from tesseract 2.04 to 3 in the near future).
For my job it was the best tool because it is the only open source (=free) tool I found that provides screenshot based automation that can be integrated with other systems like CI-systems and is programmable with Java and Python which makes easy unit testing possible with JUnit or PyUnit.
Hope I could help.
Yes we use it in-house for testing. It is actively supported. I have reported bugs in Sikuli and have had tickets and workarounds suggested within days with the bugs fixed in the next revision.
It is quite stable. The problems I have encountered typically come from not specifying images correctly and the program selecting an incorrect area of the screen.
One of our more unique uses was creating a set of automated bench tests for a legacy embedded system. The system was written in assembly and had no unit testing capabilities. It communicated with a custom legacy PC application. Rather than try to locate the PC source code, reverse engineer the design, and then write some meaningful bench tests, we created a number of Sikuli scripts to interface with the PC app. It saved weeks of development.
Yes, we use it for automating GUI tests. It's used mostly for old systems that were developed with no test driven back end. (ie: no testing api)
We tests some very complex tools including a debugger using Sikuli.
We tend not to use the Sikuli IDE though.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
we are just trying to evaluate which one is best - Selenium or Eggplant
Selenium is of course free of cost. The following are some problems we faced:
1. click actually requires focus on the page. so when a test case is running we just have to see the selenium running. Any click by the user, for example if i want the test case to run in background, then i can't do that. I dont know how fireEvent() method will help in this case.
Our application has many form and any click or value change or focus on any element reloads(through ajax) some component on the webpage. So the page is fully ajax driven. So we were getting many Stalereference exceptions when using selenium. We handled this with using our own wrappers on top of webelement which handles such exceptions.
Will eggplant be a better alternative?
The Automation tools have to have the browser open to truly do the automation tests. It's an actual representation of what the end-user would do (clicks, changing URL, clicking browser [BACK]/[FORWARD] buttons, key-presses, etc..), so it must launch an instance of the browser. Selenium IDE can only run in Mozilla Firefox, but if you set up Selenium Remote Control server, and choose a client (NUnit using .NET, JUnit using Java, etc..) and launch your browser from Visual Studio (using NUnit) or from Eclipse (using JUnit), then you can test your script in multiple browsers. They also have Web Driver which is a newer way architecture than Selenium RC (Remote Control).
I've never used Eggplant, so I can't criticize on it.
As for the things you had issues with during your proof of concept, I can help you with those. Selenium is actually JavaScript running on top of any JavaScript running on your page (ie: AJAX in your case), so it will work fine for those situations. Can you describe the behavior of the StaleReference Exceptions?
I am using Selenium and Webdriver. In ChromeDriver, the browser can actually run in background (verified by myself :) )
So I would suggest Selenium - and moreover, you can find support here ;)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
What do you recommend for testing purposes in Java environment (Selenium or Rational Functional Tester)? Could you write some pros and cons? I heard about MicroFocus TestPartner, do you have experience with it?
Both automated test tools offer some of the basic capabilities of automation. However there is a massive difference between Rational Functional Tester (RFT) and Selenium. IF your aim is basic testing, where the outcome is short term -1-3 months and you don't mind that the scripts will need a high level of maintenance, then Selenium is fine. RFT provides a number of critical differences from Selenium that impact your ability to have a long term automation solution. These are:
RFT uses an object map between the script and the application under test. This means that as the application changes you don’t need to find and replace object properties in the scripts. This will save you a lot of time
RFT uses datapools for driving large datasets into a test. this allows permutations and combinations to be created.
RFT has very powerful connectors to multiple application styles like SAP, Siebel, Oracle, VB, PowerBuilder, various web and terminal server functions. This means one tool for every situation where selenium provides only one solution.
RFT works with RQM for full end to end test management.
The net result of all this is time and longevity of the automation. I would not choose Selenium for a long term solution because RFT will cost substantially less in maintenance than RFT ever will - even for a novice.
Please clarify 'Java environment'.
If Java environment == a web based application delivered through a browser, then you have tons of choices at your disposal, not just Selenium, Rational Functional Tester and TestPartner. There are a number of open source and commercial tools for testing web apps.
If, however, Java environment == standalone Java application, that runs on your desktop, then your choices are more limited. Selenium will not work, as Selenium only supports browser-based web apps. Functional Tester and TestPartner are both good tools, I have worked extensively with both, and both support the Java platform. There are other tools, such as HP QuickTest Pro, and there are probably some Java-specific open source tools.
I'd recommend mixing the two: When there are things that you cannot do in RFT, you can get help from Selenium, which is simply a Java API which can be used in RFT. Writing cross-browser script can be a good point to use this mixed approach.
One more point to consider is: Selenium is a free and open source tool.
Another point is: Selenium has a much more activity in its discussion forums. Its is more likely to get a faster answer from other users of Selenium.
Since you mentioned TestPartner which is a commercial tool.
QTP and TestPartner have a comparable pricing level. So you should consider other important factors: integrity of the tool, learning curve, level and quality of commercial support, level of community support.
You may also want to look at TestComplete, which is also very powerful, and incorporates support for Load Testing, and Unit Testing, but has significantly lower price.
Generally, I would say, automation success is much more dependant on automation skills of a person rather than on capacities of a specific tool.
Thank you,
Albert Gareev
http://automation-beyond.com/
Take a look at TestMaker by PushToTest.com . It's written in Java and runs Java and Selenium scripts as well as soapUI, Groovy, Ruby, Python, PHP, VB and .Net. TestMaker allows you to take the Selenium scripts and run them as automated regression tests, load or performance tests and production SLA monitoring scripts without having to write the tests in multiple languages or for multiple tools. You can also run them in clouds such as EC2, GoGrid, Rackspace and CollabNet.
There is a free community version and a commercial Enterprise Version. When you purchase the Enterprise version, you get support for the tools including support on Selenium. You can download TestMaker from the website.
If you're not sure, there are free webinars several times a month on how to get the most out of the latest proven Open Source Testing tools. Definitely worth checking out.
If you are targeting only web based application with UI having HTML , we can use selenium.
If you want to use commerical tool you can go ahead with RFT and it supports different UI interfaces when compared to selenium