An Entity of Type: music genre, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing. There are many approaches to test automation, however below are the general approaches used widely:

Property Value
dbo:abstract
  • تشغيل الاختبارات تلقائياً هو استخدام البرمجيات للتحكم في إجراء الاختبارات، ومقارنة النتائج الحقيقية بالمتوقعة، وتجهيز الظروف السابقة للاختبار، إضافة إلى أمور أخرى تتعلق بالتحكم بالاختبارات وإصدار التقارير عنها. (ar)
  • V testování softwaru je automatizace testů možná za použití softwaru k řízení a provádění testů a následné porovnání získaných výsledků s předpokládanými výsledky. Automatizace testů může automatizovat některé opakované, ale nezbytné úkoly ve formalizovaném procesu testování, který se již používá, nebo provést další testování, které by bylo obtížné provést manuálně. Automatizace testů je zásadní pro průběžné doručování (continuous delivery) a průběžné testování (continuous testing). Existuje mnoho přístupů k automatizaci testů, níže jsou však vypsány nejvíce užívané přístupy: * Testování grafického uživatelského rozhraní - Testovací rozhraní, které generuje události uživatelského rozhraní, jako jsou stisknutí kláves a kliknutí myší. Následně sleduje změny, které vedou k uživatelskému rozhraní, aby ověřil, že je pozorované chování programu správné. * Testování na základě API - Testovací rozhraní, které využívá programovací rozhraní k aplikaci, aby se ověřilo testované chování. Testování řízené API obvykle úplně obchází uživatelské rozhraní aplikace. Může se také jednat o testování veřejných rozhraní tříd, modulů či knihoven, které jsou testovány pomocí různých vstupních argumentů k ověření správnosti navrácených výsledků. Jedním ze způsobů, jak automaticky generovat testovací případy, je testování založené na modelu (model-based testing) prostřednictvím modelu systému pro generování testovacích případů, ale stále pokračuje výzkum alternativních metodik k automatickému generování testovacích případů. V některých případech umožňuje přístup založený na modelu netechnickým uživatelům vytvářet automatizované případy obchodních testů v prosté angličtině, takže není nutná znalost programování jakéhokoli druhu pro to, aby bylo možné je konfigurovat pro více operačních systémů, prohlížečů a chytrá zařízení. Co automatizovat, kdy automatizovat, nebo dokonce, zda opravdu je potřeba automatizace, jsou zásadní rozhodnutí, která musí testovací (nebo vývojový) tým učinit. Přehled literatury 52 odborníků a 26 akademických zdrojů zjistil, že při rozhodování o potřebě automatizace testů je třeba vzít v úvahu pět hlavních faktorů: 1) Testovaný systém (SUT), 2) typy a počet testů, 3) testovací nástroj, 4) lidská a organizační témata a 5) průřezové faktory. Nejčastěji identifikované jednotlivé faktory ve studii byly: potřeba regresního testování, ekonomické faktory a vyspělost SUT. Rostoucím trendem ve vývoji softwaru je používání frameworků pro testování jednotek, jako jsou frameworky xUnit (například JUnit a NUnit ), které umožňují provádění testů jednotek k ověření, zda jednotlivé části kódu fungují podle očekávání a za různých okolností. Testovací případy popisují testy, které je třeba spustit v programu, aby se ověřilo, že program běží dle očekávání. Automatizace testů, většinou pomocí testování jednotek, je klíčovým prvkem extrémního programování a agilního vývoje softwaru, kde je označováno jako programování řízené testy (TDD). Testy jednotek lze psát k definování funkčnosti ještě před psaním kódu. Tyto jednotkové testy se však postupně vyvíjejí a jsou rozšiřovány současně s postupem kódování programu, nebo objevení chyb či problémů v programu, a nebo je kód je podroben refaktoringu. Pouze za předpokladu, že projdou všechny testy všech požadovaných funkcí, je kód považován za kompletní. Zastánci tvrdí, že toto řešení produkuje software, který je spolehlivější a méně nákladný než kód testovaný manuálním průzkumem kódu. Spolehlivějším považován tak proto, že pokrytí kódu je lepší, a protože je spuštěno neustále během vývoje, nikoli jednou na konci vodopádového vývojového cyklu. Vývojář zjistí vady ihned po provedení změny, kdy je její oprava nejméně nákladná. Nakonec i refaktorování kódu je bezpečnější, pokud se používá testování jednotky. Také transformace kódu do jednodušší formy s menší duplikací kódu, ale ekvivalentním chováním, je mnohem méně pravděpodobné, že způsobí nové vady, když je refaktorovaný kód pokryt jednotkovými testy. Některé úlohy testování softwaru (například rozsáhlé regresní testování rozhraní na nízkých úrovních) mohou být namáhavé a časově náročné pro provádění manuálního testování. Manuální přístup nemusí být vždy efektivní při hledání určitých tříd vad. Automatizace testů tím nabízí možnost provádět tyto typy testování efektivně. Jakmile jsou vyvinuty automatizované testy, mohou být rychle a opakovaně spouštěny. Mnohokrát to může být nákladově efektivní metoda pro regresní testování softwarových produktů, které jsou zamýšleny k dlouhé životnosti. Dokonce i drobné opravy mohou způsobit přerušení stávajících funkcí, které fungovaly dříve, a proto je dobrá automatizace, jež se postará o dlouhou životnost programu. Zatímco společnosti zabývající se vývojem softwaru oceňují opětovnou použitelnost automatizovaných testů, lze tuto vlastnost považovat za nevýhodu. Jelikož vede k takzvanému "paradoxu pesticidů" („Pesticide Paradox“), kde opakovaně prováděné skripty přestanou detekovat chyby, které jdou nad rámec jejich rozhraní V takových případech může být manuální testování lepší investicí. Tato nejednoznačnost opět vede k závěru, že rozhodnutí o automatizaci testů by mělo být učiněno individuálně s ohledem na požadavky a zvláštnosti projektu. Nástroje pro automatizaci testování mohou být drahé a obvykle se používají v kombinaci s manuálním testováním. Automatizaci testů lze z dlouhodobého hlediska učinit nákladově efektivní, a to zejména při opakovaném použití v regresním testování. Dobrým kandidátem na automatizaci testů je testovací případ pro běžnou funkci aplikace, protože je nutné test provést (regresní testování) při každém vylepšení aplikace. Automatizace testů snižuje úsilí spojené s manuálním testováním. K vývoji a údržbě automatických kontrol a kontrole výsledků testů je i tak zapotřebí manuálního úsilí. Při automatickém testování musí testovací technik nebo osoba zajišťující kvalitu softwaru být schopna kódovat, protože testovací případy jsou psány ve formě zdrojového kódu, který při spuštění produkuje výstup na základě určitého tvrzení, která jsou jeho součástí. Některé nástroje pro automatizaci testů umožňují vytváření testů pomocí klíčových slov namísto kódování, což nevyžaduje znalost programování. (cs)
  • Unter Testautomatisierung (auch Testautomation) ist die Automatisierung von Aktivitäten im Test zu verstehen, sowohl beim Softwaretest als auch bei Hardware. (de)
  • En las pruebas de software, la automatización de pruebas consiste en el uso de software especial (casi siempre separado del software que se prueba) para controlar la ejecución de pruebas y la comparación entre los resultados obtenidos y los resultados esperados.​ La automatización de pruebas permite incluir pruebas repetitivas y necesarias dentro de un proceso formal de pruebas ya existente o bien adicionar pruebas cuya ejecución manual resultaría difícil. (es)
  • L'automatisation de test permet de jouer à volonté des tests de régression à la suite de la livraison d'une nouvelle version d'une application. L'automatisation d'un test n'a de sens que si le test répond à un certain nombre de critères : * le test est systématique : il doit être exécuté à chaque nouvelle version de l'application. * le test est répétitif : il est présent dans de nombreux scénarios de test. * le test est automatisable : il est possible techniquement de faire jouer le test par un robot. Plusieurs éditeurs proposent à ce jour des robots de tests. (fr)
  • In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing. There are many approaches to test automation, however below are the general approaches used widely: * Graphical user interface testing. A testing framework that generates user interface events such as keystrokes and mouse clicks, and observes the changes that result in the user interface, to validate that the observable behavior of the program is correct. * API driven testing. A testing framework that uses a programming interface to the application to validate the behaviour under test. Typically API driven testing bypasses application user interface altogether. It can also be testing public (usually) interfaces to classes, modules or libraries are tested with a variety of input arguments to validate that the results that are returned are correct. One way to generate test cases automatically is model-based testing through use of a model of the system for test case generation, but research continues into a variety of alternative methodologies for doing so. In some cases, the model-based approach enables non-technical users to create automated business test cases in plain English so that no programming of any kind is needed in order to configure them for multiple operating systems, browsers, and smart devices. What to automate, when to automate, or even whether one really needs automation are crucial decisions which the testing (or development) team must make. A multi-vocal literature review of 52 practitioner and 26 academic sources found that five main factors to consider in test automation decision are: 1) System Under Test (SUT), 2) the types and numbers of tests, 3) test-tool, 4) human and organizational topics, and 5) cross-cutting factors. The most frequent individual factors identified in the study were: need for regression testing, economic factors, and maturity of SUT. A growing trend in software development is the use of unit testing frameworks such as the xUnit frameworks (for example, JUnit and NUnit) that allow the execution of unit tests to determine whether various sections of the code are acting as expected under various circumstances. Test cases describe tests that need to be run on the program to verify that the program runs as expected. Test automation, mostly using unit testing, is a key feature of extreme programming and agile software development, where it is known as test-driven development (TDD) or test-first development. Unit tests can be written to define the functionality before the code is written. However, these unit tests evolve and are extended as coding progresses, issues are discovered and the code is subjected to refactoring. Only when all the tests for all the demanded features pass is the code considered complete. Proponents argue that it produces software that is both more reliable and less costly than code that is tested by manual exploration. It is considered more reliable because the code coverage is better, and because it is run constantly during development rather than once at the end of a waterfall development cycle. The developer discovers defects immediately upon making a change, when it is least expensive to fix. Finally, code refactoring is safer when unit testing is used; transforming the code into a simpler form with less code duplication, but equivalent behavior, is much less likely to introduce new defects when the refactored code is covered by unit tests. Some software testing tasks (such as extensive low-level interface regression testing) can be laborious and time-consuming to do manually. In addition, a manual approach might not always be effective in finding certain classes of defects. Test automation offers a possibility to perform these types of testing effectively. Once automated tests have been developed, they can be run quickly and repeatedly. Many times, this can be a cost-effective method for regression testing of software products that have a long maintenance life. Even minor patches over the lifetime of the application can cause existing features to break which were working at an earlier point in time. While the reusability of automated tests is valued by software development companies, this property can also be viewed as a disadvantage. It leads to the so-called "Pesticide Paradox", where repeatedly executed scripts stop detecting errors that go beyond their frameworks. In such cases, manual testing may be a better investment. This ambiguity once again leads to the conclusion that the decision on test automation should be made individually, keeping in mind project requirements and peculiarities. Test automation tools can be expensive and are usually employed in combination with manual testing. Test automation can be made cost-effective in the long term, especially when used repeatedly in regression testing. A good candidate for test automation is a test case for common flow of an application, as it is required to be executed (regression testing) every time an enhancement is made in the application. Test automation reduces the effort associated with manual testing. Manual effort is needed to develop and maintain automated checks, as well as reviewing test results. In automated testing, the test engineer or software quality assurance person must have software coding ability since the test cases are written in the form of source code which when run produce output according to the assertions that are a part of it. Some test automation tools allow for test authoring to be done by keywords instead of coding, which do not require programming. (en)
  • In informatica, l'automazione del collaudo del software consiste nello sviluppo di apposito software che interagisce con il software da collaudare senza bisogno dell'intervento di un operatore umano, e fornisce all'utente un rapporto di qualità. Il risultato del processo di automazione del collaudo è il "collaudo automatizzato". Se invece il collaudo del software consiste nell'utilizzo del prodotto quasi come se fosse la normale operatività di tale sistema software, si parla di "collaudo manuale". Tra questi due estremi, si possono avere varie posizioni intermedie, in cui parte del lavoro è automatizzato, ma è sempre richiesta la presenza del collaudatore. In tali casi, si parla di "collaudo parzialmente automatizzato" o di "collaudo semi-automatizzato". (it)
  • テスト自動化(テストじどうか)とは、テスト支援ツール等を使うことにより、ソフトウェアテストを自動化することである。ソフトウェアテストを行うためには、以下のような作業をする必要がある。テスト自動化とは、これらの作業の一部を自動化することである。 * テストケースの設計 * テストの実行と結果の確認 * テスト進捗の管理 * レポートの作成 (ja)
  • Een testtool is een hulpmiddel (tool) dat gebruikt wordt bij het testen van bijvoorbeeld software. De meest voorkomende testtools zijn middelen voor het geautomatiseerd testen. Hierbij wordt met behulp van scripts een beginsituatie gemaakt en data ingelezen. Dit wordt gebruikt bij bijvoorbeeld een stresstest waarbij een systeem zwaar moet worden belast. Voordeel van dit soort testtools is dat een test eenvoudig herhaalbaar is. Ook worden testtools veel gebruikt voor regressietesten. Andere testtools die gebruikt worden zijn programma's voor het beheer van bevindingen. (nl)
  • Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais, a configuração das pré-condições de teste e outras funções de controle e relatório de teste. De forma geral, a automação de teste pode iniciar a partir de um processo manual de teste já estabelecido e formalizado. (pt)
  • Автоматизоване тестування програмного забезпечення — частина процесу тестування на етапі контролю якості в процесі розробки програмного забезпечення. Воно використовує програмні засоби для виконання тестів і перевірки результатів виконання, що допомагає скоротити час тестування і спростити його процес. (uk)
  • 在软件测试中,自动化测试指的是使用独立于待测软件的其他软件来自动执行测试、比较实际结果与预期并生成测试报告这一过程。 在测试流程已经确定后,测试自动化可以自动执行的一些重复但必要测试工作。也可以完成手动测试几乎不可能完成的测试。对于持续交付和持续集成的开发方式而言,测试自动化是至关重要的。 随着软件系统规模的日益扩大,以及应用领域的不断拓展,对软件系统的测试也变得更加困难和复杂,传统的人工测试的局限性也越来越明显。自动化软件测试技术可以克服传统测试技术的许多问题。自动化测试所依据的是一套严密的测试法则和评估标准,具有完整的自动测试过程。因此,它可以避免测试人员惯性思维所导致的测试疏漏,也可减少由于手工测试中繁复的重复工作所导致的人为差错。 (zh)
  • Автоматизированное тестирование программного обеспечения — часть процесса тестирования на этапе контроля качества в процессе разработки программного обеспечения. Оно использует программные средства для выполнения тестов и проверки результатов выполнения, что помогает сократить время тестирования и упростить его процесс. (ru)
dbo:thumbnail
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 1086547 (xsd:integer)
dbo:wikiPageLength
  • 23891 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1122291933 (xsd:integer)
dbo:wikiPageWikiLink
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • تشغيل الاختبارات تلقائياً هو استخدام البرمجيات للتحكم في إجراء الاختبارات، ومقارنة النتائج الحقيقية بالمتوقعة، وتجهيز الظروف السابقة للاختبار، إضافة إلى أمور أخرى تتعلق بالتحكم بالاختبارات وإصدار التقارير عنها. (ar)
  • Unter Testautomatisierung (auch Testautomation) ist die Automatisierung von Aktivitäten im Test zu verstehen, sowohl beim Softwaretest als auch bei Hardware. (de)
  • En las pruebas de software, la automatización de pruebas consiste en el uso de software especial (casi siempre separado del software que se prueba) para controlar la ejecución de pruebas y la comparación entre los resultados obtenidos y los resultados esperados.​ La automatización de pruebas permite incluir pruebas repetitivas y necesarias dentro de un proceso formal de pruebas ya existente o bien adicionar pruebas cuya ejecución manual resultaría difícil. (es)
  • L'automatisation de test permet de jouer à volonté des tests de régression à la suite de la livraison d'une nouvelle version d'une application. L'automatisation d'un test n'a de sens que si le test répond à un certain nombre de critères : * le test est systématique : il doit être exécuté à chaque nouvelle version de l'application. * le test est répétitif : il est présent dans de nombreux scénarios de test. * le test est automatisable : il est possible techniquement de faire jouer le test par un robot. Plusieurs éditeurs proposent à ce jour des robots de tests. (fr)
  • テスト自動化(テストじどうか)とは、テスト支援ツール等を使うことにより、ソフトウェアテストを自動化することである。ソフトウェアテストを行うためには、以下のような作業をする必要がある。テスト自動化とは、これらの作業の一部を自動化することである。 * テストケースの設計 * テストの実行と結果の確認 * テスト進捗の管理 * レポートの作成 (ja)
  • Een testtool is een hulpmiddel (tool) dat gebruikt wordt bij het testen van bijvoorbeeld software. De meest voorkomende testtools zijn middelen voor het geautomatiseerd testen. Hierbij wordt met behulp van scripts een beginsituatie gemaakt en data ingelezen. Dit wordt gebruikt bij bijvoorbeeld een stresstest waarbij een systeem zwaar moet worden belast. Voordeel van dit soort testtools is dat een test eenvoudig herhaalbaar is. Ook worden testtools veel gebruikt voor regressietesten. Andere testtools die gebruikt worden zijn programma's voor het beheer van bevindingen. (nl)
  • Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais, a configuração das pré-condições de teste e outras funções de controle e relatório de teste. De forma geral, a automação de teste pode iniciar a partir de um processo manual de teste já estabelecido e formalizado. (pt)
  • Автоматизоване тестування програмного забезпечення — частина процесу тестування на етапі контролю якості в процесі розробки програмного забезпечення. Воно використовує програмні засоби для виконання тестів і перевірки результатів виконання, що допомагає скоротити час тестування і спростити його процес. (uk)
  • 在软件测试中,自动化测试指的是使用独立于待测软件的其他软件来自动执行测试、比较实际结果与预期并生成测试报告这一过程。 在测试流程已经确定后,测试自动化可以自动执行的一些重复但必要测试工作。也可以完成手动测试几乎不可能完成的测试。对于持续交付和持续集成的开发方式而言,测试自动化是至关重要的。 随着软件系统规模的日益扩大,以及应用领域的不断拓展,对软件系统的测试也变得更加困难和复杂,传统的人工测试的局限性也越来越明显。自动化软件测试技术可以克服传统测试技术的许多问题。自动化测试所依据的是一套严密的测试法则和评估标准,具有完整的自动测试过程。因此,它可以避免测试人员惯性思维所导致的测试疏漏,也可减少由于手工测试中繁复的重复工作所导致的人为差错。 (zh)
  • Автоматизированное тестирование программного обеспечения — часть процесса тестирования на этапе контроля качества в процессе разработки программного обеспечения. Оно использует программные средства для выполнения тестов и проверки результатов выполнения, что помогает сократить время тестирования и упростить его процесс. (ru)
  • V testování softwaru je automatizace testů možná za použití softwaru k řízení a provádění testů a následné porovnání získaných výsledků s předpokládanými výsledky. Automatizace testů může automatizovat některé opakované, ale nezbytné úkoly ve formalizovaném procesu testování, který se již používá, nebo provést další testování, které by bylo obtížné provést manuálně. Automatizace testů je zásadní pro průběžné doručování (continuous delivery) a průběžné testování (continuous testing). Existuje mnoho přístupů k automatizaci testů, níže jsou však vypsány nejvíce užívané přístupy: (cs)
  • In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing. There are many approaches to test automation, however below are the general approaches used widely: (en)
  • In informatica, l'automazione del collaudo del software consiste nello sviluppo di apposito software che interagisce con il software da collaudare senza bisogno dell'intervento di un operatore umano, e fornisce all'utente un rapporto di qualità. (it)
rdfs:label
  • تشغيل الاختبارات تلقائيا (ar)
  • Automatizace testování (cs)
  • Testautomatisierung (de)
  • Automatización de pruebas (es)
  • Automazione del collaudo del software (it)
  • Automatisation de test (fr)
  • テスト自動化 (ja)
  • Testtool (nl)
  • Test automation (en)
  • Automação de teste (pt)
  • Автоматизированное тестирование (ru)
  • Автоматизоване тестування (uk)
  • 自动化测试 (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:depiction
foaf:isPrimaryTopicOf
is dbo:genre of
is dbo:industry of
is dbo:product of
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is dbp:genre of
is dbp:industry of
is dbp:mainInterests of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License