当我使用MSTest Framework,并复制Selenium IDE为我生成的代码时,MSTest无法识别[TearDown]和[SetUp].有什么替代方案?
我正在尝试编写一个switch语句,它将在搜索字段中键入搜索项,具体取决于存在的搜索文本框.我有以下代码.但我得到一个"控件无法从一个案例标签中掉头"的错误.请让我知道如何解决这个问题.提前致谢!
switch (searchType)
{
case "SearchBooks":
Selenium.Type("//*[@id='SearchBooks_TextInput']", searchText);
Selenium.Click("//*[@id='SearchBooks_SearchBtn']");
case "SearchAuthors":
Selenium.Type("//*[@id='SearchAuthors_TextInput']", searchText);
Selenium.Click("//*[@id='SearchAuthors_SearchBtn']");
}
Run Code Online (Sandbox Code Playgroud)
控制不能从一个案例标签('case"SearchBooks":')转到另一个案例标签
控制不能从一个案例标签('case"SearchAuthors":')转移到另一个案例标签
我在某个地方看到了类似下面的内容,并想知道这是什么意思.我知道他们是getter和setter,但是想知道为什么字符串Type是这样定义的.谢谢你的帮助.
public string Type { get; set; }
Run Code Online (Sandbox Code Playgroud) string[] arrTopics = {"Health", "Science", "Politics"};
Run Code Online (Sandbox Code Playgroud)
我有一个if语句,如:
if (arrTopics.Count() != null)
Run Code Online (Sandbox Code Playgroud)
当我将鼠标悬停在上述语句上时,它说:
警告CS0472:表达式的结果始终为true,因为int类型的值永远不等于int类型的null?
我无法弄清楚为什么这么说.有谁能够帮我?
string body = Selenium.GetBodyText();
if (body.Contains("software", StringComparison.CurrentCultureIgnoreCase))
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
string does not contain a definition for Contains当我做上述事情时,我收到了一条消息.我在这做错了什么?在此先感谢大家!
我试图检查身体是否有字符串"软件","软件"或"软件".body将包含文本的段落和段落(字符串).
让我们假设我正在为一些公共图书馆网站编写Selenium测试.该网站有一个登录页面.登录网站后,我看到了一系列书籍.我可以点击书名的任何链接.点击书名链接后,屏幕上会显示该书的摘要,网址如下:
http://somePublicLibrary.com/Books/e6a9bb54-da25-102b-9a03-2db401e887ec?title=BookTitle
如果我将url中的guid更改为某个无效的guid,那么页面将显示一条消息,而不是显示摘要:
没有找到摘要.
我想为这个场景创建一个自动化测试.
我正在尝试编写像changeUrlGuid(),getUrlGuid()等等的方法.但是如何使用Selenium Webdriver获取url文本?
selenium = new DefaultSelenium(
ConfigurationManager.AppSettings["TestMachine"].ToString(),
4444,
ConfigurationManager.AppSettings["Browser"].ToString(),
ConfigurationManager.AppSettings["URL"].ToString()
);
Run Code Online (Sandbox Code Playgroud)
有没有一种有效的方法来做到这一点,而不是重复:
ConfigurationManager.AppSettings[""].ToString()
Run Code Online (Sandbox Code Playgroud) 我正在使用Selenium和C#在VS 2010中编写一些单元测试.我有几个测试用例.例如,我的一些测试用例是:
启动网站:http:// localhost:8080.验证登录页面是否存在.输入用户名和密码,然后登录.
检查是否存在"搜索"选项卡.单击"搜索"选项卡.验证标签搜索图书,搜索图像和搜索网络是否存在.
单击"搜索书籍".输入"C-Sharp for Dummies".单击搜索.确认返回适当的结果.
现在,我的问题是:为上述每个测试用例创建单独的类是一个更好的主意,还是将它们组合到一个类更好,并且只有单独的方法?
所有三个测试用例都是相互关联的.我的意思是,执行#2要求#1首先完成,#3要求#2首先完成.如果我创建单独的类,我相信我需要调用类#2中的#1中的方法,并调用类#3中的#1和#2中的方法.
我不太确定这对此有什么好主意.提前致谢.
使用array.ElementAt(0);我们可以获取数组索引0处的元素.有没有一种方法来获取数组中的所有元素?
string[] arr1 = {'abc', 'def', 'ghi'}
Library.Results["TEST_ACTUALVALUE"] = "The results are: " + arr1;
Run Code Online (Sandbox Code Playgroud)
TEST_ACTUALVALUE是我的report.xls文件中的一列.上面在我的excel文件中写了System.string [].
我在同一名称空间中有几个测试.我没有为每个单元测试使用Test1,Test2等命名约定.所以,现在当我运行所有测试时,它们不按我想要的顺序运行.有订购测试的方法吗?
如果我不按特定顺序执行测试,我的测试不会失败.但是,我只是想按照它们在我的测试用例电子表格中的顺序执行它们.