2012-03-27 8 views
1

Ich habe eine Selenium Test Suite in JUnit von Selenium IDE konvertiert und versucht, von Eclipse auszuführen. Aber es ist ein Fehler in meinem Skript inJUnit Test Suite für Selenium 2

suite.addTestSuite(Open_Google_IE.class); 
suite.addTestSuite(Open_Google_FireFox.class); 

Fehlermeldung: Die Methode addTestSuite (Klasse) in der Art Testsuite für die Argumente nicht anwendbar ist (Klasse).

Bitte beraten, was der Grund sein könnte. Ich habe auch überprüft Creating Test Suite in Webdriver und aktualisierte Testsuite, aber wirft immer noch diesen Fehler.

JUnit Testsuite

import junit.framework.Test; 
import junit.framework.TestSuite; 
import org.junit.runner.RunWith; 
import org.junit.runners.Suite; 
import org.junit.runners.Suite.SuiteClasses; 

@RunWith(Suite.class) 
@SuiteClasses(value = {Open_Google_IE.class, Open_Google_FireFox.class}) 

public class OpenGoogle { 

    public static Test suite() { 
     TestSuite suite = new TestSuite(); 
     suite.addTestSuite(Open_Google_IE.class); 
     suite.addTestSuite(Open_Google_FireFox.class); 
     return suite; 
    } 

    public static void main(String[] args) { 
     junit.textui.TestRunner.run(suite()); 
    } 
} 

Antwort

2

Soweit ich sehen kann, ist der Code OK.

addTestSuite() kann nur Klassen nehmen, die junit.framework.TestCase erweitern. Bitte stellen Sie sicher, dass Ihre Klassen erweitern, dass ein oder anderen Weg finden, um ...

+0

Sorry, ich bin neu in Selen/JUnit . Können Sie mir bitte mitteilen, wie Sie junit.framework.TestCase erweitern können? Willst du sie importieren? importieren junit.framework.TestSuite; Auch wenn Selen Testfall ist in JUnit WebDriverBacked dann TestSuite Arbeit, aber wenn Testfall ist JUnit WebDriver dann wirft addTestSuite Fehler. Bitte beraten. –

+0

Das bedeutet, dass Sie in der 'Open_Google_IE.java'-Datei angeben müssen, dass die öffentliche Klasse Open_Google_IE TestCase erweitert und auch dort importiert wird. Aber all das ist irgendwie gegen die JUnit-Philosophie, denn es würde am meisten funktionieren, wenn das für dich funktioniert ... Aber ich denke immer noch, dass das funktionieren würde :) –

+1

Nach dem eingeschlossen, gibt es keinen Fehler in der Test Suite (in addTestSuite (testClass) Schritt). Der Testfall (Klasse "Open_Google_IE") wird jedoch nicht ausgeführt. Allerdings habe ich in verifiziert und als addTest (neue TestSuite (testClass)) modifiziert; dann hat es geklappt. Vielen Dank. –

1

Ihre Klasse hat SeleniumTestBase

wie dieses zu erweitern:

public class CreateAccountTestCase extends SeleniumTestBase {