1
我只是使用WatIn而没有其他测试框架,像NUnit或其他。用BackGroundWorker运行WatiN以打开IE浏览器
当我尝试运行BackGroundWorker打开IE浏览器,它发生
型“System.Threading.ThreadStateException”的一个例外WatiN.Core.dll发生 但没有处理错误用户代码
附加信息:CurrentThread需要将其设置为 将ApartmentState设置为ApartmentState.STA才能够自动执行 Internet Explorer。
我在stackoverflow上读了一些线程,但是所有的测试都失败了,出现了同样的错误。
有人可以帮助我吗?
代码
BackgroundWorker _worker = new BackgroundWorker();
_worker.WorkerReportsProgress = true;
_worker.ProgressChanged += new ProgressChangedEventHandler(_worker_ProgressChanged);
_worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_worker_RunWorkerCompleted);
_worker.DoWork += (s, e2) =>
{
Loga(usuario, senha);
};
_worker.RunWorkerAsync();
protected void Loga(string usuario, string senha)
{
using (var browser = new IE("my page here"))
{
//Code here
}
}