Automating UI Test Using the White Frameworks
In this episode we’ll be talking with Vladimir Khorikov, author of the Pluralsight course Automating UI Tests for WPF Applications. Discover how to create a maintainable, automated test suite for your WPF application using the open-source framework White.
Vladimir will guide us through the process of building a White automation framework and share some of his tips and best practices along the way.
Vladimir has been a software developer/software architect for about 10 years now. He has a strong mathematical and algorithmic background but later his focus shifted to more generic topics, such as design patterns, domain-driven design, and functional programming.Vladimir been practicing DDD for about 6 years now which has concepts that are really useful for creating complex business applications. Vladimir's mission is to reduce complex problems to a level where they are no longer hard to understand and implement and shares his insights along the way.
Quotes & Insights from this Test Talk
- White is an open-source library from Test Tank. Like CodedUI, it has a more narrow scope. It only targets desktop applications, not web applications. Both CodedUI and White are based on UI Automation Library for Microsoft. It's a low-level library. In theory, it is possible to use it directly for your tests but you practice, if it's much more convenient to use as a CodedUI or White because Automation Library itself is difficult to use. How we decided what to use for our project, basically I think the choice should depend on the goals you have.
- The performance difference between CodedUI and White is quite big. The difference in the tests I made, White ran 5 times faster than CodedUI in the same scenarios.
- I would say that if you have chosen White for a large project, then you are on the right track already. The White library has a really nice object model which how to write good-looking code for your tests
- First of all, don't use a recorder unless your test suite is really small and you're not planning to expand it. Secondly, that all should be a layer of abstraction between your tests and the White library. In the course, I name it the main specific framework. I heard you called it an automation framework. Whatever the name is. The presence of such layer is vital to the maintainability of your tests.
- I think we need to be pragmatic here. If a project is just started and it doesn't take long to run the regression test with manually, there is no need to put your efforts into the UI test automation. I think it's just fine to let the project grow to some point where automated tests really provide significant value. The reason here is that when a project begins, it's much better to focus on its functionality rather than thinking about UI automation or prompt.
- Read more about software development and best practices. Practice them as much as possible. It will pay off greatly over time. Technology gets outdated pretty quickly. At the same time, the principles of software development live much longer.
- Automating UI Test for WPF Applications – video training course
- White Framework
- Domain-Driven Design: Tackling Complexity in the Heart of Software
Connect with Vladimir
May I Ask You For a Favor?
Thanks again for listening to the show. If it has helped you in any way, shape or form, please share it using the social media buttons you see on the page.
Additionally, reviews for the podcast on iTunes are extremely helpful and greatly appreciated! They do matter in the rankings of the show and I read each and every one of them.
Test Talks is sponsored by the fantastic folks at Sauce Labs. Try it for free today!