Все мои тесты игнорируются в Nunit - PullRequest
2 голосов
/ 22 апреля 2009

Я написал HomePageClass

Imports System
Imports System.Collections.Generic
Imports System.Text.RegularExpressions
Imports System.Text
Imports WatiN.Core

Namespace TestDesign
    Public Class HomePage
        Inherits IE
        Public Const HomePageURL As String = "test"

        Public Sub New()
            MyBase.New(HomePageURL)
        End Sub

        Public Sub New(ByVal instance As IE)
            MyBase.New(instance.InternetExplorer)
        End Sub

        Public ReadOnly Property UserIDField() As TextField
            Get
                Return TextField(Find.ById(New Regex("txtuserName")))
            End Get
        End Property

        Public ReadOnly Property PasswordField() As TextField
            Get
                Return TextField(Find.ById(New Regex("txtPassword")))
            End Get
        End Property

        Public ReadOnly Property ContinueButton() As Button
            Get
                Return Button(Find.ById(New Regex("Submit")))
            End Get
        End Property

        Public ReadOnly Property UserRegistrationLink() As Link
            Get
                Return Link(Find.ByUrl("userregistration.aspx"))
            End Get
        End Property

        Friend Sub Login(ByVal username As String, ByVal password As String)
            UserIDField.TypeText(username)
            PasswordField.TypeText(password)
            ContinueButton.Click()
        End Sub

        'Friend Function GoToUserRegistration() As UserRegistrationPage
        '    UserRegistrationLink.Click()
        '    Return New UserRegistrationPage(Me)
        'End Function
    End Class
End Namespace

И HomePagetestsClass

Imports System.Threading
Imports NUnit.Framework
Namespace TestDesign

<TestFixture()>_
Class HomePageTests

    <Test()> _
    Public Sub GoToHomePageTest()
        Dim home As New HomePage()
        Assert.IsTrue(home.ContainsText("Welcome"))
        home.Close()
    End Sub

    <Test()> _
    Public Sub Login()
        Dim home As New HomePage()
        home.Login("abc", "def")
        Assert.IsTrue(home.ContainsText("Welcome"))
        home.Close()
    End Sub
End Class

Может кто нибудь подскажет, где я ошибаюсь. Просто пытаюсь реализовать обобщенный тестовый шаблон.

1 Ответ

6 голосов
/ 22 апреля 2009

Причина, по которой ваши тесты игнорируются, заключается в том, что все классы TestFixture должны быть открытыми. Если вы специально не указали уровень видимости, тогда .NET предполагает, что ваш класс должен быть видимым только в вашей сборке (Friend aka Internal в C #). Поскольку графический интерфейс NUnit не является частью вашей сборки, он не может создать вашу TestFixture. Простое изменение строки:

Class HomePageTests

до:

Public Class HomePageTests

и тебе будет хорошо.

...