We will be making many official framework generators for SnapTest, but if a desired language/framework doesn't exist yet, please contact us and we can consider making it for you. Also, check our trello roadmap board to see if we already have it on the roadmap.
The official generators are open-source, and you can help contribute to the building of more styles. Also, if you don't want to go through the approval process of being merged into the official code generators, we have a mechanism to let you run your own generator with the snaptest-cli.
Each framework/language can have different "styles of code". We have a "page-object" version of NightwatchJS in the works right now. If it's going to slowly for you, please read the previous question's answer to understand how to contribute to the code generation.
SnapTest is a chrome extension, but we are considering making a port for Firefox. Generated automation code will definitely run on any browser the framework support.
The snaptest-cli tool, official framework generators, and framework harnesses are open source. The actual extension code is not.
We are dedicated to keeping your tests and data highly secure. Everything is over HTTPS and encrypted in the database. If you're still concerned about the privacy of your test data, we have a "Private mode" feature where you can import/export test JSON blobs, and we won't keep any data on the cloud. It will be a feature of the premium service, but for now you can sign-up for the free premium beta here. Afterwards, it'll be available in the user context switcher in the extension (top-right of the screen).
SnapTest automates the browser using pure Javascript. Unfortunately, there are many things QA testers need to do that can't be played back via this technology due to security limitations - such as iframes, changing windows, advanced drag-and-drop, etc. Generated Selenium code can easily do these things. In fact, generated Selenium code can also:
In addition to Selenium, SnapTest will generate for even cooler playback frameworks, such a RobotFramework, TestCafe, Cypress.io, etc. Giving you the option to adopt the newest and most awesome ways to run tests.
Currently, Private Mode is in the premium beta. You can sign up for free here. After signing up, you'll switch to the "Private Mode" context from the dropdown in the upper-right of the tool.
Yes. As of v0.5.4 we've added support for XPath and selecting elements by text!
SnapTest uses a layered strategy when auto-generating a selector in the record/assert modes. It's a 3 strategy approach to generate a unique selector. First, it starts by looking for id/name, then falls back to a common ancestor solution, and finally falls back to a stupid "div > nth-of-whatever(2)" (last resort which should be changed manually).
The second strategy will work on dynamic id's, so we'll be introducing a way to turn off or re-order the priorities for the strategies. Please contact us to let us know you need it.
We will support iFrame functionality for the framework generators. The SnapTest extensions record/playback modes can't properly work with iframes due to Chrome security limitations, so you'll have to manually configure and execute the iframe actions, until they are being played via a generated framework.
We have not yet heard of a front or back-end framework SnapTest couldn't generate for.
We can add new assertions very quickly. Please let us know what you need.
This is on the roadmap, but hasn't been implemented yet. If you have ideas of how you'd like it, please contact us.
You can either commit the SnapTest JSON or the generated code. The JSON is available for import/export in the private mode.
Right now, we don't have a mechanism to import Selenium IDE tests. We welcome any contribution to a simple script that converts Selanese to SnapTest JSON, which can be imported.
Currently, SnapTest can't do integrations. We'll be adding mechanisms to allow for it, including the:
Keep an eye on our Updates to see if these have been released yet.
Currently, SnapTest can't handle before/afterEach or before/afterAll. In the near future (or now if I forgot to update this FAQ), there will be optional action lists for these "setup/teardown hooks". Since SnapTest doesn't have direct access to your servers since it's a chrome extension, you will have the ability to utilize "HTTP request actions" which will allow you to send off a POST (etc.) request to your setup/teardown server or even an integration such as Slack.
Keep an eye on our Updates to see if these have been released yet.
Captcha's are designed to prevent applications like SnapTest to get past a certain point, so in order to test an application with Captcha's, you'll need to make a secret "backdoor" around it for testing purposes. This is better described in this stack overflow post.
There are two possible things you're doing wrong.
A yellow action refers to one that is "Selenium-only", and will work only when running the generated code. Please refer to the actions reference for more details about this.