[RESOLVIDO] Testando SmartGWT com Selenium e JUnit

2 respostas
H

Já tentei de todas as formas resolver, e não consegui, então pergunto se alguém pode me dar uma força.

Estou fazendo teste em um aplicação WEB SmartGWT.

No eclipse, integrando o selenium com o JUnit, tenho duas classes, mostradas abaixo.

public class Testando extends SeleneseTestCase {
	
	private Selenium selenium;
	@Before
	public void setUp() throws Exception {
		//setUp("http://127.0.0.1:8888/", "*firefox");
		selenium = new DefaultSelenium("localhost", 4444, "*firefox", "http://127.0.0.1:8888/");
		selenium.start();
	}
	@Test
	public void Cadastro(String nome, String cpf, String email, String pas1,
			String pas2) throws Exception {
		selenium.open("/TesteGwt.html?gwt.codesvr=127.0.0.1:9997");
		selenium.waitForPageToLoad("60000");
		selenium.type("scLocator=//DynamicForm[ID=\"Form\"]/item[name=username||title=Username||index=0||Class=TextItem]/element", nome);
		selenium.type("scLocator=//DynamicForm[ID=\"Form\"]/item[name=cpf||title=CPF||index=1||Class=TextItem]/element", cpf);
		selenium.type("scLocator=//DynamicForm[ID=\"Form\"]/item[name=email||title=Email||index=2||Class=TextItem]/element", email);
		selenium.type("scLocator=//DynamicForm[ID=\"Form\"]/item[name=password||title=Password||index=3||Class=PasswordItem]/element", pas1);
		selenium.type("scLocator=//DynamicForm[ID=\"Form\"]/item[name=password2||title=Password%20again||index=4||Class=PasswordItem]/element", pas2);
		selenium.click("scLocator=//DynamicForm[ID=\"Form\"]/item[name=createAccount||title=Create%20Account||index=5||Class=ButtonItem]/canvas/");
		verifyTrue(selenium.isTextPresent("Cadastred User. Click Here"));
		//assertEquals(true ,selenium.isTextPresent("Cadastred User. Click Here"));
	}

	@After
	public void tearDown() throws Exception {
		selenium.stop();
	}
}
public class PrincipalTest {
	Testando testando = new Testando();
	
	@Test
	public void testCadastro() throws Exception{
		testando.setUp();
		testando.Cadastro("NomeTeste", "[telefone removido]", "[email removido]", "123", "123");
		testando.tearDown();
	}
}

Como manda o figurino, dou start no selenium-server.jar e rodo a aplicação como Web. Instalei o plugin do SmargGWT no firefox, todavia, quando mando rodar a aplicação como JUnit Test, ele volta para mim o seguinte erro:


com.thoughtworks.selenium.SeleniumException: ERROR: Unrecognised locator type: 'sclocator'

at com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:97)
at com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:91)
at com.thoughtworks.selenium.DefaultSelenium.type(DefaultSelenium.java:291)
at tests2.Testando.Cadastro(Testando.java:22)
at tests2.PrincipalTest.testCadastro(PrincipalTest.java:11)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

Desde já agradeço a ajuda.

2 Respostas

H

Up!

H

Up!

Criado 31 de maio de 2011
Ultima resposta 1 de jun. de 2011
Respostas 2
Participantes 1