Sprache zu lernen, um aus den manuellen Tests zur automatisierten/Programmierung
Ich arbeite wie ein manueller tester und Dokumentation (Prüfpläne etc.) Personal in einem Unternehmen der software - /IT-Abteilung. Ich habe keine große Programmierung im hintergrund, aber ich will Programmieren lernen Sprache(N) und Instrument(en). Also, ich bin auf der Suche nach automatisierten Test-tools und die Programmiersprache(N) lernen, die mir auch geben Industrie Vorteil.
Einige Punkte sind zu beachten:
- Ich muss wissen, welche Werkzeuge sind die am häufigsten in der Industrie und Sprachen mit den damit verbundenen tools.
- Ich habe nicht viel Zeit zu lernen, Lasten zu transportieren. Also, ich bin auf der Suche nach tools, die die Nutzung von Sprachen, die von Vorteil zu lernen, falls ich mehr tun wollen-Programmierung.
- Ich lieber Web-basierte app testen, aber das ist nicht eine Einschränkung.
- Sie geben können 2-3 Sprachen so wie ich das verstehe gibt es nicht nur einen Gewinner.
- Ich habe getan, einige QTP, die verwendet VBScript aber VBScript ist nicht weitgehend verwendet. Ich möchte eine Sprache lernen, hatten breitere Basis.
- Bitte noch geben Ihre inputs und Ideen, auch wenn diese Frage scheint wirklich schwierig zu beantworten.
Vielen Dank im Voraus.
EDIT:
Ich denke, bisher habe ich mich entschieden, dass ich gehen:
- QTP
- Selen
- Test Driven Development Methoden
Brauche ich nur, um herauszufinden, eine gute Programmiersprache, das gibt mir ein programmer ' s edge und ist geeignet für mehrere testing-tools (einschließlich Selen). Vielleicht Python, Ruby oder Java?
Von diesen 3 würde ich wählen java. Ich würde behaupten, es hat die meisten etablierten automatisierten Test-tools. Obwohl Ruby und Python haben eine geringere Einstiegshürde.
Danke. Wie etwa c# und nUnit?
InformationsquelleAutor SKA | 2010-07-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wow, das ist ziemlich widesweeping Frage. Ich würde sagen, Sie waren in einer guten position, da sich die Industrie bewegt sich in Richtung einer Test Driven Development (oder schreiben Sie Ihre tests, bevor Sie Ihren code) Modell.
Zunächst einmal werden Sie wissen wollen, über Unit-Tests, Continuous Integration und Web-Automatisierung.
Werde ich zu konzentrieren auf die Bereiche, die ich weiß, (.NET, Java, Javascript, Build-Automatisierung, Selen)
Für web-basierte Tests, die bekanntesten sind wohl Selen und Watin. Diese können Sie Skript-Browser zum ausführen von Aktionen automatisch. Aber ich habe sehr wenige gute Verwendung von diesen und Sie sind sehr fummelig (Sie reden hier von Tagen/Wochen Aufwand) zu erhalten einzurichten und nützlich. Wieder die Konzepte, die hinter diesen ähnlich sind, was auch immer Rahmen, den Sie verwenden.
Denke, antwortete ich, 4,5,6 in 1,2,3 🙂
HTH
Agil bedeutet viele verschiedene Dinge für verschiedene Menschen. In meiner Erfahrung agile kann oft bedeuten, dass "nur tun Sie es doch", wenn in der Tat es ist ein strenger Prozess. Agile ist auch nicht eine Magische Kugel, die oben genannten Strategien wird mit Hilfe agiler, aber die härteste bit von agile ist die Disziplin.
InformationsquelleAutor Rob Stevenson-Leggett
Als bei industriell Vorteil,' es hängt davon ab, was du damit meinst.
Für große Unternehmen QTP, ist weit verbreitet. Sache zu lernen, mit QTP ist nicht wirklich die Sprache, aber das Werkzeug selbst. Für mich war es eher mühsam zu überwinden tool Besonderheiten zu lernen als VBscript. Wenn Sie denken über performance-Tests, als PerformanceCenter wäre wohl die Wahl. Hier haben Sie C als Sprache, aber wieder, es ist mehr der Kampf mit einem tool, als mit einer Sprache.
In einigen Unternehmen gibt es-stack von IBM, so Rational software kommt, um zu spielen (FunctionalTester, Roboter, PerformanceTester). Es ist auch ein bisschen Werkzeug Komplexität durch zu bekommen (IBM Redbobks kann helfen).
In kleineren Unternehmen Java/C# von Vorteil sein könnte. Hier können Sie sich vertraut mit junit/nunit/TestNG/MSTest. Für webapps Dinge wie Selen/Watij/Watin/Fit/Fitness/Concordian sind mehr als einen Blick Wert. Wenn Sie einen moment Zeit haben, schauen AutoIT,PowerShell,Python,Spielmann,Jmeter, Abt, Watir/Gurke,Sikuli.
Es gibt auch viele andere tools wie WebAii, TestComplete, Twist.. einige andere kommerzielle tools. In der Regel können Sie bekommen, versuche, für Sie zu spielen mit ihm für eine Woche oder zwei.
Alles hängt davon ab, welche Art von Projekt Sie ausgesetzt sein werden, und welche Art von Unternehmen es werden.
Egal, meiner Meinung nach ist es genug, um zu lernen Java/C# zu einem gewissen Grad. Sie brauchen nicht zu C#/Java-ninja, wissen, jede Bibliothek, und das Studium ist wirklich hart, angesichts Sprache. Sie sehen die Entwicklung von software ist mehr als die Kenntnis einer Programmiersprache und-test-automation ist mehr als zu wissen, dass ein tool/Sprache (M. Fewster & D. Graham), so nicht bekommen, ganz besessen von ihm. Wenn Sie können Programm-Skript in QTP (nicht aufzeichnen, aber das Programm, Deskriptiv-Programmierung, zersetzende Logik-Bibliotheken, mit voller Kontrolle von TestResults über die richtigen Methoden etc.), als andere tools kein Problem sein. Möglicherweise müssen Sie wie Woche oder zwei, um zu lernen die Grundlagen der Sprache, aber das ist alles für die test-Automatisierung - (für den Anfang zumindest). Brauchen Sie mehr, um einige Erfahrung haben, wissen, tools, wissen, Konzepte, wissen, vor-und Nachteile der verschiedenen Ansätze, um größere Bild im Kopf, als nur "wie Schreibe ich in dieser Sprache" (Sie haben ALSO für diese 😀 ).
Gehen als mit Java/C#, und Tauchen Sie ein in TDD,BDD,ATDD und anderen agilen Zeug.
Ja. Ich dachte c# mit nUnit. Dies ist eine schwierige Frage, obwohl Java Vs C#.
InformationsquelleAutor yoosiba
Die Antwort auf diese Frage hängt wirklich davon ab, ein paar Dinge. Erstens, welche Art von Tests Sie tun? Testen von web-basierten Anwendungen? Testing-Bibliotheken/- Komponenten eines größeren Programms? GUI-Tests? Testen von Kommandozeilen-apps?
Habe ich Folgendes gefunden nützlich bei der Erstellung gescriptete/automatisierte test-Ausstattung:
TCL - TCL-Schnittstelle mit der Kommandozeile genauso einfach wie eine batch-Datei, hat aber eine starke Sprache, die Schläge batch aus dem Wasser (einschließlich GUI-Funktionen). Wenn Sie die scripting-Windows-basierte Konsole apps (entweder um Sie zu testen oder Sie zu verwenden, um zu testen was anderes, ich empfehle sich die Zeit zu lehnen, TCL.
AutoIt - Diese Skriptsprache ermöglicht die Automatisierung von UI-Interaktion mit Windows-apps schnell und leicht. Es ist auch ziemlich einfach zu lernen. Wenn Sie möchten, nehmen Sie sich die Zeit und Mühe zu entwickeln, um eine screen-scraping-Dienstprogramm, können Sie kombinieren es mit AutoIt zu erstellen, die einige ziemlich anspruchsvolle test-Systeme.
C - Beim testen der kompilierten Bibliotheken, hatte ich ein erstaunliches Maß an Erfolg mit den guten alten C. Schreibe ich die grundlegende Struktur für eine test-app und erstellen Sie ein Skript-Dienstprogramm, das dynamisch generieren, der rest des Codes basierend auf welche tests ausgeführt werden müssen (ich gebe es eine Bibliothek von Beispiel-C-snippets, die Sie verwenden können, um kompliziertere Aufgaben).
Rubin - Wenn man das tut, automatisierte Tests, eine robuste Skripting-Sprache kann sehr weit gehen. Ob Sie brauchen, um zu analysieren, test-Protokolle, Berichte generieren, oder automatisches generieren von test-Skripts, eine scripting-Sprache, die Sie gut kennen, können Sie sparen eine Menge Zeit und Kopfschmerzen. Meine Sprache der Wahl ist, Ruby, aber andere in meiner Firma lieber andere Sprachen wie Perl oder Python. Wahl der Sprache ist nicht wichtig, wählen Sie eine und es auch erfahren.
Je nachdem, was es ist, dass Sie testen, können Sie auch irgendeine Art von Test-tools gebaut, die in den code, den Sie testen. Java-code wird manchmal geschrieben mit JUnit-tests, Ruby-code kann mit dem Test::Unit framework, etc. Hier ist eine Liste der unit-testing-frameworks für eine Vielzahl von Sprachen. Wenn der code, den Sie testen, wurde mit unit-Tests im Hinterkopf, werden Sie wollen, um die Sprache zu lernen, der code wurde geschrieben, so dass Sie können, nutzen Sie diese unit-tests.
Mit Bezug auf Tcl, es ist nicht die einzige Sprache, die wie das. Perl und Python sehr gut funktionieren in der gleichen Rolle. In deinem Fall würde ich vorschlagen, dass Python eher als Perl oder Tcl, da Python ist eine bessere Brücke zu Programmieren.
Danke. Mein Mann liebt Python.
Thornley - ich erwähnte TCL weil ich bin ein fan der interaktiven Konsole, kommt mit der Windows-version von TCL (kann man fast verwenden Sie es wie ein drop-in-Ersatz für cmd.exe). Sie sind richtig, obwohl, dass TCL ist aber eine von mehreren Optionen.
Thornley: ich bin nicht einverstanden, dass Python ist "eine bessere Brücke in die Programmierung". Es ist anders, aber nicht besser oder schlechter als Tcl in dieser Hinsicht. Beide Sprachen haben stärken und Schwächen. Ich Stimme, zwar, dass Python ist eine bessere Brücke zur OO-Programmierung, offensichtlich.
InformationsquelleAutor bta
Für web-basierte Tests, die Sie vielleicht prüfen wollen,fitnesse. Auch ist ein automatisiertes test-framework für python ist die robot framework.
InformationsquelleAutor Bryan Oakley
Selen ist ein client/server-Modell (führen Sie den server irgendwo, hat Zugriff auf Ihre QA-app-Instanz; Sie code Ihre tests mit den client-Bibliotheken) , bietet Kunden in einer Reihe von Sprachen (java, ruby, etc)
Diese Art von testen ist eine gute Idee, wenn Sie haben ein dediziertes QA-Ressourcen, die code schreiben. Es bietet einige high-level-regression-Tests. Es ist jedoch nicht ohne seine Nachteile: (1) die Prüfungen kann einige Zeit dauern, (2) Sie müssen möglicherweise einige änderungen vornehmen, um Ihre web-Anwendung von dom-Elementen für das framework leicht, (3) die änderung der web-app benötigen, ändern Sie Ihren code testen, das kann nicht trivial.
Ihre andere Optionen zum schreiben von unit tests für den code der Anwendung. In der Regel die Entwickler tun dies als Teil eines test-driven Prozess. So gibt es TDD für Entwickler und dann automatisierte QA-Tests für die QS.
InformationsquelleAutor hvgotcodes
Werde ich auch noch einen kleinen Kommentar
Gibt es einen neuen Test-Automatisierungs-Plattform XML2Selenium
Diese Plattform baut auf klassische Selen-framework und bietet viele nützliche Funktionen
Aber es ist Recht einfach zu bedienen
Brauchen Sie nicht zu lernen, der java-oder ruby - Sie können schreiben in XML -
SMth like:
Hier sehen Sie den Bericht mit Fehler:
http://xml2selenium.com/demored/xml2selenium/
Und hier sehen Sie den Bericht mit erfolgreichen Status:
http://xml2selenium.com/demogreen/xml2selenium/
PS: Es unterstützt das testen in Allen Browsern, nicht nur in Firefox, wie Selenium IDE
InformationsquelleAutor Alex Grakoff
Kann man ja lernen, selenium IDE, die nur als add-on auf der firefox-browser, mit dem Sie notieren Sie Ihre tests und spielen Sie Sie bei Bedarf. Die Beschränkung der IDE ist, es kann nur verwendet werden, auf firefox.
Wenn Sie auf der Suche nach test auf mehrere Browser, müssen Sie Selenium Grid oder WebDriver, das erfordert ein java-Kenntnisse. Und wieder sind Sie nicht erforderlich, um eine Java-pro, um dies zu tun, einfach lernen helfen.
Können Sie die Suche der youtube.com für Selen-Tutorials.
Vorteile von Selen :
Hoffe, dies wird Ihnen helfen.
InformationsquelleAutor Sidram Waghmare