Tag Info

Hot answers tagged

10

To answer the question "are they worthwhile?", you need to explore: How expensive (in terms of time and money) are they to create, maintain, and execute? What value are these tests providing? Are they finding bugs? Providing confidence? Are there other, less expensive, ways to provide similar value? I once worked at a software company which built desktop ...


5

I'd go to the I.M Testy blog http://www.testingmentor.com/imtesty/ ( BJ Rollison of MS ) and search for 'font' I'd also get a copy of How We Test Software At Microsoft and read it


5

Desktop software usually requires installation. Web applications usually do not. But web applications are sometimes expected to be running 24x7. This can make upgrades and maintenance more of a challenge to plan and execute (and thus test) In addition to browser versions mentioned by others here, you may need to worry about browser add-ons You may also need ...


5

My experience is that UI automation tools differentiate themselves by the kinds of interfaces they interact with rather than whether they facilitate "basic" testing or complicated testing. I think you will have a hard time finding a single tool that covers both native applications (what you called "locally installed GUI front-ends") as well as web ...


4

Yes. The Page Object pattern is a good technique, and is the logical conclusion you are working towards already by extracting reused logic into methods. With this pattern, you create a model of every page in your UI. These page models are the only part of your program that know anything about your UI. Then, if the home page title changes, you just update ...


4

It sounds as if you try to avoid duplication in your automated tests. That is a good practice to follow, not only in automation but in programming in general. For static strings, you might consider using property files instead of Java classes, especially if there are literally thousands of such values. Finally, you might ask yourself whether you are ...


4

Combinatorial explosion of varieties: You may need to test each version of each browser on various hardware running various operating systems Front-end testing can be easier because of the universality of the displayed information When you do performance/load testing you're simultaneously testing the machine the server is on, not the current desktop (unless ...


4

I do not think the UI testing is very different: field validation, default values, resizing, scalability, and so on. You probably need to support more than one brand and version of web browser, and perhaps even some mobile devices. You may want to separate your business logic tests from your browser-level tests so that you do not repeat every test on ...


4

Apart from "what those other guys said", all of it very good advice, some other considerations I'd recommend are: Usability - Desktop applications tend to have a help file built in, where web applications should be more or less self-explanatory. Load times - this one is a big pain point. Not everyone has broadband (and we won't go into how much I despise ...


3

Is it possible to wrap around Selenium 2.0 WebDriver Test Cases with anything other than NUnit for C# code? Yes. Extending the user246’s answer, Selenium is just a library that allows you to manipulate with web pages. Unit Test Framework wraps your tests and helps you to run the tests and produce the test execution report with number of ...


3

I'd probably do a Google search for "How would you test the font button in microsoft word", perhaps post the question to a few random forums, then follow whatever came back without even thinking twice about it. Oh wait, no I wouldn't... never mind.


2

Answering your question requires knowing why you were asked to write those tests. Unlike solving applied math problems, we usually do not write automated UI tests for the sheer pleasure or the intellectual challenge. I assume you were asked to write them, in that style, for a reason. If there is a reason to believe the UI is particularly buggy and that it ...


2

Good answers abound, just wanted to add one more thing to consider for automation - Localizability and how you identify elements is different. In a client app, you identify the element by it's name which is also the value displayed to a user. This means in order to work in localized versions you need to get the correct value from a resource file instead of ...


2

I am looking for a specific tool which will help me document what I see when I perform web site usability evaluations. At the end of each evaluation, I need to create an report for my client. As your demand above, I would think a tool called qTrace could help you out. It's a complete screen capture tool that helps a tester easily submits clear and ...


2

GUI automation is very tricky to say the least. As a general rule of thumb GUI automation demands that the automated test 'know' the machine state at all times. This means that we shouldn't assume that a particular window has focus. If the automation requires a window to have focus it should check to make sure that window has focus and if not set focus to ...


2

Is the purpose of the test to verify 'page titles' or are you using page titles to validate state? If purpose is to verify page title match, then I would say automation is probably not optimum solution even if there are many 'page titles' to validate. If purpose is to verify state (e.g. to sync test), then you might consider doing a partial string match ...


2

According to the Quick start guide the principle method used in generating the test code is CheckView(). Which compares two png screenshots of a screen a before and after then throws an exception if there are any differences. In the background it does this with some unit testing code: static IcuTest ICU = IcuTestStarter.IcuFromDir(@"c:\test_data"); ...


2

The most efficient tool for testing the appearance of a website is still the human eye and brain. That said, if you want or need to automate, image comparison is probably the least effective method because even with fuzzy logic it can generate far too many false positives. All it takes is a change in hardware (a different monitor or video card - this will ...


2

First of all I would recommend to read about the Testing Pyramid (if you do not know it yet); in a nutshell, do not create more than 10% GUI Tests. Furthermore, I recommend these two articles from Gojko Adzic:Ui Testing without shooting yourself and Effective User Interface Testing In our current project we (unfortunately) have a lot of GUI Tests. What ...


2

As far as my experience goes (not too far ;-) - have a look at Sikuli. At first thought - it is ideal for heterogenous apps with GUI and not wanting to go too deep into details of the apps.


2

The size() function returns the number of elements found with the getElements() function, I expect it to return just one table element. The value of size equals 1. I would get the HTML inside the table and count the occurrences of <tr> or something unique per row, expecting you do not have nested tables with rows inside the initial table. The code for ...


2

The Microsoft stack is surprisingly still very popular, regardless of other cheaper alternatives. TFS is basically the central repository. Call it git and Jenkins rolled into one. It manages version control as well as builds. MTM is just Microsoft's test management tool. This is very useful for linking a manual test that has been created within MTM (its ...


2

Tests that explore the GUI of an application need to simulate the keyboard and mouse to send commands. They also need to read the screen to validate that the correct things are displayed. To me the mechanisms for keyboard and mouse entry and for screen reading are more important than the programming language. However as your application is in C# writing the ...


1

What if the //code is just doing something for the class (viewer) itself? In that case it makes no sense to extract this code to other class or it will indicate that my code smells. Furthermore if the method remains in the viewer it will be private so I'll have no way to test it In general, I prefer not to subclass GUI widgets (see below for my ...


1

Here's the short rundown on TFS and the Microsoft application life cycle management ecosystem: TFS - Team Foundation Server is the "glue" that pulls everything together in a central repository. TFS can be used to manage builds (using MSBuild.exe), issues, test cases, automation, source control, and so forth. Visual Studio - As well as the code IDE, Visual ...


1

The page object pattern is a pretty simple concept, not nearly enough meat on it for an entire book, although I could definitely see a book about UI automation that included it. This blog post has some good information about it: http://selenium-tutorial.blogspot.com/2012/06/webdriver-page-objects-pattern.html As for other best practices, see this answer ...


1

I think the best single book to read for your situation is The Design of Everyday Things by Donald Norman. He's the other half Norman / Nielsen group linked in Peter's answer and a pioneer of the usability field. He talks about a lot of important concepts like affordances, mappings, forcing functions, and so many many others. The concepts in this book are ...


1

I have read two great books written by Steve Krug, which I think are a must read for anyone doing usability testing. Don't Make Me Think Rocket Surgery Made Easy Both are easy to read and you should be able to read both in a day (or two). Maybe also ask the question on http://ux.stackexchange.com/, guess that community might have better getting started ...


1

My general advice would be different, but in this circumstance I would probably move this content to a database table with three columns: PageName, PageURL and PageTitle. Then I would build some matching code that looks up the url of the current page, then checks the title. The code then becomes assertTrue(Verification.PageTitleIsCorrect()); Your code is ...


1

Selenium is just an API. You should be able to use it with any C# test framework.



Only top voted, non community-wiki answers of a minimum length are eligible