To start with, according to the MSDN documentation I found with a quick search, each tool is optimized for a specific kind of test automation.
tcm.exe - Team Foundation Server/MTM test cases associated with automation - this runs the test cases, rather than directly running the tests and automatically updates the test case status (I think - I'm not that ...
To start let me be completely transparent and state that I do work at Microsoft. However, in my role I nor my team uses Coded UI, but I do teach the basics of coded UI in some of my classes.
Rather than comparing the features of each tool set I would recommend including other factors in your decision such as:
As a general rule of thumb we try to minimize ...
According to Visual Studio: Load testing in the cloud, here are the steps to switch the test from using Visual Studio Online to running locally:
Simply open your existing project using Visual Studio 2013 first.
Within the Solution Explorer, expand the 'Solution Items' folder, then open Local.testsettings.
Edit the test settings file to configure your ...
You can use the combination of any unit testing framework (like NUnit, MSTest, XUnit) with additional nuget packages for the work with REST API itself
RestSharp (http://restsharp.org/) Probably the most popular and convenient REST HTTP Client for .Net.
RestAssured.Net (https://github.com/lamchakchan/RestAssured.Net) .Net port of Java's lib, may be easier ...
I would recommend JMeter as:
JMeter: free and open source
MSVS: Test Professional costs around $2000 per developer.
MSVS: Windows only
JMeter: HTTP, FTP, JDBC, SOAP, TCP, JMS, SMTP, POP3, IMSP
However if your company has Microsoft products based development infrastructure, like Team ...
Writing an API test in Visual Studio can be done with:
NUnit or MSTest as your Test Runner
** NUnit and the TestAdapter are available on Nuget
An http client, like .Net's HttpClient
** This is in the System.Net namespace
(Optional) Json.Net for parsing responses
** Also avaiable on Nuget
Your test will look something like this:
public void ...
I have used Coded UI Tests, but used Selenium Webdriver much more extensively. In my answer I will completely ignore the record and playback capabilities of both because I would not advocate using either except to familiarize yourself with the tool. In addition, I won't comment on features that one has vs the other because they are very nearly identical. ...
The easiest way is to create your own ExpectedConditions class with methods accepting a WebElement as parameter, for example:
With the implementation in the MyConditions class, which works exactly like the existing ExpectedConditions methods.
public static Func<IWebDriver, bool> ElementIsVisible(...
If it is an Angular application I would go for Protractor
Protractor was made for Angular Apps. You don't have deal with elements not being visible yet due to page loads. Protractors deals with it for you
As far as I know CodedUI des not provide this functionality. Correct me if I'm wrong.
I would recommend looking into Visual Studio load test tool. You will need an Ultimate license. This tool will make it much easier to do all the things necessary to create a useful performance test while minimizing time to script and hardware needed to drive the test.
You can read more here...
Disclaimer: the answer is assuming you're using the MsTest unit test framework.
The easiest way to run parallel tests is simply to activate this flag here:
An important note here: this only works for tests in different assemblies (projects). So tests in the same test project will still run sequentially. Of course, with large test suites for ...
If you are a programmer you need Microsoft Visual Studio Enterprise which is $5,999/user/first year and includes Team Foundation Server online access & Microsoft Test Manager stand alone app.
Anyone doing just QA and no programming can use Visual Studio Test Professional which will cost your company less $2,169/user/first year and only includes Team ...
TFS=Team Foundation Server. All things microsoft that require storage and integration get run through this. VS=Visual Studio. All things that are "visualized" are pushed through this. MTM=Microsoft Test manager. This manages all tests.
So with this then TFS stores everything and synchronizes it. VS is a method to visualize things in order to interact ...
You can have more than one ".testsettings" file. On a recent project we used three
Local.testsettings - for test development and low load tests driven entirely from one computer.
Agent.testsettings - for testing with a controller plus two agents, for bigger loads.
Cloud.testsettings - for running tests on Visual Studio Online.
To switch between the three ...
Like any other form of automated test, it depends on how you're invoking them and the environment you need to run. If you need a UI user session (which is the common setup) then you're probably not going to be packaging them with the unit tests.
Some of the factors to consider are:
CodedUI tests are slower than unit tests because they interact with the ...
If you have to support multiple versions for your software product I would keep the tests with in the same repository. Then the tests will version with the application itself. Which will make you able to run the tests for older versions with ease.
Also you will want your developers to run and maintain the tests. For example when they need to change the ID ...
Well Coded UI Tests are hardly "new", though they were new to me as a framework when I was starting to use them early on. I put them in the category of "record and playback" but with extensibility they do add more on once you are able to get some abstraction in your tests and be able to modify the scripts to become more like a proper coded and programmed ...
In order to find the specific h2 tag you are trying to locate you can find them in below ways:
Through name as an element locator.
Using relative xpath syntax is : //tagname[@attribute="value"]
Using absolute xpath you can define the child tag starting from the parent tag if snippet is not as big as given above.
You can even install firepath addon from ...
A lot. The last I heard, MTM will be deprecated once the test-specific functionality of the TFS web portal is available.
Create backlog items (in TFS) - the UI is a lot better, and there's been a lot of improvement to backlog item management and iteration management.
Create tasks (in TFS) - see above.
Design test cases (in TFS, VS, or MTM) - the TFS UI is ...
You can use XPath, linkText or className to locate your Link object.
driver.findElement(By.xpath("//li[@title='This is test']"));
Code to Perform Click:
WebElement ele_Link= driver.findElement(By.linkText("TestLink"));
First up, your boss is going to want to see this information in a convenient form. TFS allows this without much extra work on your part.
You can use TFS (if it's a recent enough version) to set up scheduled runs for your test automation. Reports of your runs then become an automatic thing - and you can arrange for them to be emailed to whoever needs ...
I also suggest reading these great MSDN docs:
Binding a Data Source to a Web Performance Test
How to: Set Credentials on a Web Performance Test
You can set the credentials for any Web site that uses basic
authentication or Integrated Windows authentication. Web sites that
contain personal information often require user authentication before
Use profile setting for browsers:
FirefoxProfile profile = new FirefoxProfile();
IWebDriver webDriver = new FirefoxDriver(profile);
Are you using Visual Studio Express?
If so, perhaps the workaround described in this SO thread will work for you:
The selected answer, which reveals the limitation of Visual Studio Express + Nunit
As I've found out Visual Studio Express ...
A lot depends on what you want the front-end automation to do.
Given that you've got a lot of web forms with code behind, I'd honestly consider starting with the unit test framework built into Visual Studio, and using that to test the data handling (I'd recommend taking a look at Channel9's TechEd videos for an idea of what you can do with Visual Studio ...
I assume your web application is for external customers (so your users can use web app in many browsers and operating systems outside of your control). Which is very interesting challenge - exactly what we are doing :-)
You are excellently positioned to use new future W3C standard for browser automation, Selenium Webdriver (Se 2). (In a way, you future-...
Have you looked into TestComplete? We use it at my company and have found it to be very versatile and the SmartBear folks are excellent to work with.
There are a few pages that describe the differences between newer VSTest.Console.Exe and older MSTest.exe.
Choose and configure a test runner
VStest support recent features, including Fakes. However some features(such as database unit tests, load and web tests) supported only in old MSTest.
vstest.console.exe – CommandLine Test Runner
Gives a brief summary ...
I had got the same issue with web performance test in Visual Studio 2013.
Some redirects in my application contains a white space in their url
<h2>Object moved to <a href="/Error/SubErr.aspx?GROUP=MED SH&USER=DAVID GOUPIL">here</a>.</h2>
When visual studio attempts this redirect, the web test returns a Bad request.
Although I have never used the Visual Studio load test functionality I think it works in the following way:
You specify some browser types and the load testers does HTTP calls with those browser user-agent. Its not starting a real browser to make the calls, that would be to complex and consume lots of cpu and memory. The browser list on MSDN contains ...