您的位置:首页 > 其它

Selenium 自动化测试(二)部署Selenium Remote Control(Selenium RC)

2015-12-16 17:07 555 查看
Selenium 是 thoughtworks公司的一个集成测试的强大工具,在上一篇文章介绍了Selenium IDE,现在来说说Selenium Remote Control。Selenium Remote Control包含2个部分,一个是Selenium Server,负责提供自动化测试服务,另一部分是Selenium Client,负责执行脚本,可使用Java、C#,以及PHP等编程语言实现。

一)Selenium Server

Selenium Server本质是由Java开发的,要启动Selenium Server,电脑上必须先配置Java的运行环境。启动它非常简单:

java -jar selenium-server-standalone-2.43.0.jar

如果要查看使用帮助,可以使用-help参数,列出Selenium Server的参数列表。
OK,Selenium Server启动之后,我们来部署.Net的环境。

二)Selenium RC for .net

下载selenium-dotnet-2.48.0开发包,解压后有2个文件夹,net35和net40,说明Selenium for .Net至少要运行在3.5版本的.Net环境下,一般安装了Visual Studio 2010以上的版本已经是支持4.0的了。我使用的是Visual Studio 2012版本。启动Visual Studio后,新建一个Unit Test工程,并把net40目录里的dll,添加到工程中。



在上一篇文章中,我使用了Selenium IDE录制了网页操作的脚本,这样,可以直接引用到代码当中。

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

using Selenium;

namespace _37GameAutoTest_U
{
[TestClass]
public class UnitTest1
{
static void Main(string[] argv)
{
UnitTest1.Pay_37_com_order();
}
[TestMethod]
public static void Pay_37_com_order()
{
Console.WriteLine("start!");
Selenium.ISelenium selenium=new Selenium.DefaultSelenium("127.0.0.1", 4444, @"*firefox D:\Program Files (x86)\Firefox\firefox.exe", @"http://pay.37.com");
selenium.Start();
selenium.Open("/");
selenium.Click("id=main_select_game");
selenium.Click("id=game_237");
selenium.Type("id=alert_server_fastin", "3000");
selenium.Click("id=alert_btn_fastin");
selenium.Type("id=username", "lizhibin205");
selenium.Click("id=define_user");
selenium.Click("id=money_0");
selenium.Click("id=bank_25_ICBCB2C");
selenium.Click("id=pay_submit");
selenium.Click("id=confirm_submit");
selenium.Stop();
//完成一次提交订单操作

}
}
}

总结:完成了简单的自动化脚本测试,但是,自动化生成的脚本,在某些情况下存在一些问题。比如,某些DOM在ajax结束后动态添加,会导致在脚本测试中找不到对应ID而导致抛出异常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: