When comparing PhantomJS vs Endtest, the Slant community recommends PhantomJS for most people. In the question“What are the best multi-browser testing tools with synchronized interactions?” PhantomJS is ranked 3rd while Endtest is ranked 6th.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Supports screen capture
Pro Used in many open source projects
Pro Supports many browser standards
PhantomJS has full DOM and CSS parsing, JSON, canvas, and SVG support.
Pro Built on WebKit
WebKit is becoming the gold standard for browser compatibility, making it a good starting point for native headless browser testing.
Pro Codeless automated testing
Endtest allows you to create automated tests for web applications, directly on their cloud infrastructure. No coding skills are required.
You can also choose the action "Execute Javascript" for a more flexible test run.
Pro Running your automated tests on their cloud infrastructure
You can easily run your automated tests on their platform, just by clicking the run button.
Pro Designed for Continuous Integration
It has an API which allows testers to run it on Jenkins or Team City. Other than that, it has a built-in test scheduler to allow testers to preset test executions.
Pro Now supports mobile testing
Endtest has added a new feature which now supports mobile testing for both Android and iOS (.apk and .ipa).
Pro Option to export your automated tests in different formats, including .EXE
You can export your automated tests in a variety of different formats, and run them on your own infrastructure. The formats are either in Python file format or executable file format (.EXE).
Pro Now supports a wider variety of browsers, operating system and devices
As of March 2018, Endtest can now support multiple platforms (Windows, MAC, Android and iOS), Operating Systems, and more than a handful of devices for both Android and iOS.
Pro Super fast and affordable.
Pro Premium version is relatively cheaper than most in the market
Their pricing plan ($79/month or $650/year) includes team plan upgrade, which means the whole team, regardless of the number of users, will only need to subscribe to the $79/month or $650/year plan. This includes unlimited test runs, test exports, recordings, etc.
Pro It's mostly free to use
The free plan covers a lot, you can have up to 3 test suites, and you can run your automated tests as many times as you want. The pro plan includes some very advanced options that you might need only if you're working with a team (for example, the collaboration feature, schedule test run, API for Jenkins, etc.).
Cons
Con Deprecated by Puppeteer
PhantomJS is no longer actively maintained by the original authors. Puppeteer is said to be a replacement supported and backed by the Google Chrome team, now.
Con Heavy setup
You'll often end up having PhantomJS binaries connected via WebDriver to your testing framework, possibly using client/server especially if you want your test running with something else than Java. This means an overhead in terms of maintenance and performance, but still usually lighter than running a full browser (like Chrome, Firefox, IE).
Con Browser closes unexpectedly
It often happens when running on more then 5 (my measurement) JVM instances that the browser gets stuck and quits unexpectedly. This can be partially solved by running the instances one by one instead of parallel (this is a problem when testing Jenkins and Bamboo agents) but I don't believe this qualifies as a solution. The error is called UnreachableBrowserException
.
Con Elements are sometimes not visible
This is an error which occurs with almost no reason, PhantomJS sometimes decides that it cannot click the element even though the element is intractable or enabled.
This happens if you have to scroll to see the element (and these are not pages that load elements with JavaScript) which is strange because PhantomJS should catch the whole page if it is not loaded explicitly with JavaScript. This problem partially goes away with re-sizing the browser, but that does not really qualify as a solution.
The error it raises is: ElementNotVisibleException
.
Con Doesn't support a wide array of browsers and/or operating systems
Because it's still in its infancy, it doesn't yet have a huge variety of browsers and operating systems.
Con Free plan has limited time storage for test suites
If you are using the free plan, keep in mind that the test suites created there are scheduled to be deleted after around 2 weeks. Endtest will send you a notification email the day before mentioning "Test suites from users who are not on the PRO Plan get automatically deleted after some time," and offering for you to upgrade to PRO.
Con Codeless and locks you in rendering your efforts useless if you want to switch
Con Bad UI
