Bonjour,

je suis en pleine découverte de Selenium. Je crée mes scénarii avec Selenium IDE puis je les exporte en Java pour les jouer avec JUnit. J'ai quelques problèmes et interrogations :
- tous mes scénarii commencent par une connexion à notre application. Je ne veux pas répéter ce bout de scénario dans toutes mes classes. J'ai donc étendu la classe SeleniumTestCase pour ajouter une méthode "connexion". Chaque scénario hérite ensuite de cette nouvelle classe et peut utiliser la méthode connexion. Est-ce la bonne méthode pour mettre en commun des bouts de scénario ?
- je voudrais faire une capture d'écran lorsqu'un scénario échoue. J'ai catché les Exceptions dans mes classes. Si j'exécute le test avec le plugin JUnit d'Eclipse, l'exception est bien lancée et catchée, et ma capture fonctionne. Par contre si je lance mon test à l'aide d'un script Ant, ça ne fonctionne pas. Voici mon script Ant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
 
    <target name="clean">
        <delete dir="build"/>
    </target>
 
    <target name="compile">
        <mkdir dir="${classes}"/>
        <javac srcdir="${src}" destdir="${classes}" classpath="${build.classpath}"/>
    </target>	
 
	<target name="start-server">
        <java jar="lib/selenium-server.jar" fork="true" spawn="true">
            <arg line="-timeout 30" />
            <jvmarg value="-Dhttp.proxyHost=proxy.proxyhost.com" />
            <jvmarg value="-Dhttp.proxyPort=44444" />
        </java>
    </target>
 
	<target name="stop-server">
        <get taskname="selenium-shutdown"
            src="http://localhost:4444/selenium-server/driver/?cmd=shutDown"
            dest="build/selenium-server-out.txt" ignoreerrors="true" />
        <echo taskname="selenium-shutdown" message="DGF Errors during shutdown are expected" />
    </target>	
 
	<target name="tests" description="runs JUnit tests">
		<junit printsummary="on" haltonfailure="off" haltonerror="off" timeout="${junit.timeout}" showoutput="true">
			<classpath>
				<pathelement location="${classes}"/>
				<pathelement path="${build.classpath}"/>
			</classpath>
 
 
	    	<formatter type="plain" />
 
        	<test name="mon.package.AllTests" outfile="build/test-results">
        		<formatter type="xml"/>
			</test>
 
        	<!--
	      	<batchtest todir="${testoutput}" filtertrace="on">
	        	<fileset dir="${src}">
	          		<includesfile name="${tests.include}" />
	          		<excludesfile name="${tests.exclude}" />
	        	</fileset>
	      	</batchtest>
	      	-->
		</junit>
	</target>
 
	<target name="report">	
		<echo message="running JUnit Reports" />
		<delete dir="build/reports" />
		<mkdir dir="build/reports" />
		<junitreport todir="build/reports">
			<fileset dir="build">
				<include name="test-results.xml" />
			</fileset>
			<report format="frames" todir="build/reports" />
		</junitreport>
		<echo message="To see your Junit results, please open build/reports/index.html" />
	</target>
 
	<target name="build_tests" depends="clean, compile, start-server, tests, stop-server, report" />
- à propos de la capture d'écran, ça fonctionne nickel avec *chrome mais si je mets *iexploreproxy, selenium se lance mais s'arrête après le premier open et lance l'erreur "ERROR: Current window or frame is closed!". Le test fonctionne si je mets *iexplore, mais dans ce cas la capture d'écran n'est pas supportée.

Voilà ça fait deja pas mal de question
Merci d'avance pour votre aide !