【问题标题】:How can I use NUnit to test label and buttons visibility?如何使用 NUnit 测试标签和按钮的可见性?
【发布时间】:2014-01-21 19:55:51
【问题描述】:

我有一个用于从网站注销的类...我想为它创建一个单元测试,但它所做的唯一事情(也是唯一功能)是将按钮和标签可见性设置为 false并重定向页面

我创建了 [test] 类,但我只能调用该函数(不返回任何内容),我无法访问标签和按钮(我认为是因为它们是在 html 页面内创建的,并且只有aspx.cs 文件可以访问它们)来比较可见性...

我该怎么做?

【问题讨论】:

  • i cant access the label and the button 是什么意思?您遇到的错误或行为是什么?请显示您的单元测试和/或网页的相关代码。
  • 这是我的代码 public void LogOut(object sender, EventArgs e) { Label.Visible = false; btLogOut.Visible = false; Response.Redirect("Login.aspx"); } Label 和 btLogOut 是在 aspx 页面上用 HTML 代码创建的。在我的测试类 public class TestPage { [Test] public void Test_logOut() { Page pae = new Page(); //这里我只能访问方法LogOut(),我不能从这里检查标签和按钮的值,或者这是一个你不应该用单元测试测试的方法的例子?

标签: c# asp.net testing mocking nunit


【解决方案1】:

您可以查看的一件事是使用 Selenium (http://docs.seleniumhq.org/) 之类的工具进行集成测试,而不是单元测试。 Selenium 可以从 nunit 测试中“驱动”。这样你实际上启动了一个浏览器,去点击一个按钮,然后检查结果。

除此之外,您可以尝试将代码从代码隐藏文件中移出并移到一个简单的 c# 类中,您可以直接使用单元测试对其进行测试。然后,您只需从 Page 对象中调用简单 c# 类的一个实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-19
    • 2017-05-08
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    • 2020-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多