Our Newired project started in autumn 2016 (seems to be yesterday). A brand new product, a completely new team, the same old challenges. Test automation was among them. We knew from the beginning that we would need to implement it from start, otherwise we wouldn’t be able to manage the complexity behind the product. Does Newired Journeys seem a simple application to you? Well, Google search might seem to be a simple text box and yet there’s complex technology behind it. We are not saying Newired is as complex as Google Search, but complex enough to be a challenge for test automation. And we need help to deal with it. Interested? Read the story.
Newired is a product which allows users to insert interactive help into target web applications by means of its products, Journeys and Tips. You can check out this simple demo on our website: https://www.newired.com There are three Personas in Newired’s world who we can also call users – namely, the Content Creator, the End Users, and the Admin.
They are responsible for creating and delivering Journeys and Tips to End User. They use the Editor (standalone application – Mac and Windows) to create and manage Journeys and Tips. They can also preview and play Journeys and Tips in Editor to see it from the End User’s perspective.
The content creator also manages Sites in the Portal (web application), as the Site is a container of Journeys. The Portal also allows content creators to define additional settings, work with translations and analyze reports and feedbacks.
The Portal is also used to publish selected Journeys which are to be available for End Users on the target web application.
End Users choose the Journey they want to play from the Launcher. Otherwise, the Journeys can start automatically on the target website or even be launched from a link. The content creator can set Visibility Rules to launch Journeys only in specific cases. For instance, only in given parts of applications or only to some users. This means that every User has access only to Journeys which are relevant in a given context.
End Users can also choose the language of the Journey if the latter is available in several languages.
End Users can optionally provide feedback to the Content Creator to share their experience and suggestions for each Journey or Step, if the Feedback option is enabled.
A Journey is a series of steps (modal windows or bubbles attached to page elements) to help the user with a task execution.
A Tip is a contextual help attached to a page element.
TEST AUTOMATION CHALLENGE
There are several different areas test automation is needed for and each of them has own challenges:
– it is a standalone application created in Elm, which can be used on Windows and Mac
– the desired level of automation aims to cover basic flows which create and manage content and detect any errors
– currently, we use Selenium, but several errors are not detected and are only found later, during manual testing
2) PUBLISHED CONTENT
– Journeys and Tips are inserted to the target application and they help the end user
- The automation should verify the correct presence, availability, appearance (position, content, …) and behavior of Journeys and Tips (all of this is on UI level)
– We support all modern web browsers, so all tests have to be executed on all supported platforms (Mac, Windows) and browsers
– Newired server can be installed on Windows or Linux, so different test environments are needed
– Currently, we also use Selenium for that, and we are experimenting with Docker to manage environments
3) TARGET APPLICATIONS
– Newired works on virtually all web-based applications
– Currently, only a few applications are used in Test Automation, but we would like to build a much more robust infrastructure, in order to test our product on many applications on a regular basis.
4) NO INTEGRATION TESTS
– We currently do not have any automated tests in the middle layer of the test pyramid
Is your mind sparkling with ideas on how to handle the challenge? Are you interested in hearing more about it? Would you like to become part of our journey?
Whether you are willing to share ideas or experiences, become a consultant or a full-time member of our great team in Ostrava, we will be happy to meet you and chat.
Send us your CV and contact information and we will get in touch with you. You can also check out our other open positions: https://www.newired.com/jump-aboard/