Тестирование приложений. Обеспечения Базовый курс (3е издание) Версия книги 15 от 31. 03. 2022
Скачать 5.07 Mb.
|
Usability. The capability of the software to be understood, learned, used and attractive to the user when used under specified conditions. [ISTQB Glossary] 176 Understandability. The capability of the software product to enable the user to understand whether the software is suitable, and how it can be used for particular tasks and conditions of use. [ISTQB Glossary] 177 Learnability. The capability of the software product to enable the user to learn its application. [ISTQB Glossary] 178 Operability. The capability of the software product to enable the user to operate and control it. [ISTQB Glossary] 179 Attractiveness. The capability of the software product to be attractive to the user. [ISTQB Glossary] 180 Accessibility testing. Testing to determine the ease by which users with disabilities can use a component or system. [ISTQB Glossary] 181 Interface Testing. An integration test type that is concerned with testing the interfaces between components or systems. [ISTQB Glossary] 182 API testing. Testing performed by submitting commands to the software under test using programming interfaces of the applica- tion directly. [ISTQB Glossary] 183 CLI testing. Testing performed by submitting commands to the software under test using a dedicated command-line interface. [ISTQB Glossary] 184 GUI testing. Testing performed by interacting with the software under test via the graphical user interface. [ISTQB Glossary] Подробная классификация тестирования Тестирование программного обеспечения. Базовый курс. © EPAM Systems, 2015–2022 Стр: 86/298 Важно! Тестирование интерфейса пользователя (GUI testing 184 ) и тестирование удобства использования (usability 175 testing) — не одно и то же! Например, удобный интерфейс может работать не- корректно, а корректно работающий интерфейс может быть неудоб- ным. • Тестирование безопасности (security testing 185 ) — тестирование, направ- ленное на проверку способности приложения противостоять злонамеренным попыткам получения доступа к данным или функциям, права на доступ к ко- торым у злоумышленника нет. Подробнее про этот вид тестирования можно почитать в статье «What is Security testing in software testing?» 186 • Тестирование интернационализации (internationalization testing, i18n test- ing, globalization 187 testing, localizability 188 testing) — тестирование, направлен- ное на проверку готовности продукта к работе с использованием различных языков и с учётом различных национальных и культурных особенностей. Этот вид тестирования не подразумевает проверки качества соответствую- щей адаптации (этим занимается тестирование локализации, см. следующий пункт), оно сфокусировано именно на проверке возможности такой адапта- ции (например: что будет, если открыть файл с иероглифом в имени; как бу- дет работать интерфейс, если всё перевести на японский; может ли прило- жение искать данные в тексте на корейском и т.д.). • Тестирование локализации (localization testing 189 , l10n) — тестирование, направленное на проверку корректности и качества адаптации продукта к ис- пользованию на том или ином языке с учётом национальных и культурных особенностей. Это тестирование следует за тестированием интернациона- лизации (см. предыдущий пункт) и проверяет корректность перевода и адап- тации продукта, а не готовность продукта к таким действиям. • Тестирование совместимости (compatibility testing, interoperability testing 190 ) — тестирование, направленное на проверку способности приложения рабо- тать в указанном окружении. Здесь, например, может проверяться: o Совместимость с аппаратной платформой, операционной системой и сетевой инфраструктурой (конфигурационное тестирование, configura- tion testing 191 ). 185 Security testing. Testing to determine the security of the software product. [ISTQB Glossary] 186 «What is Security testing in software testing?» [ http://istqbexamcertification.com/what-is-security-testing-in-software/ ] 187 Globalization. The process of developing a program core whose features and code design are not solely based on a single language or locale. Instead, their design is developed for the input, display, and output of a defined set of Unicode-supported language scripts and data related to specific locales. [«Globalization Step-by-Step», https://docs.microsoft.com/en-us/globaliza- tion/ ] 188 Localizability. The design of the software code base and resources such that a program can be localized into different language editions without any changes to the source code. [«Globalization Step-by-Step», https://docs.microsoft.com/en-us/globalization/ ] 189 Localization testing checks the quality of a product's localization for a particular target culture/locale. This test is based on the results of globalization testing, which verifies the functional support for that particular culture/locale. Localization testing can be executed only on the localized version of a product. [«Globalization Step-by-Step», https://docs.microsoft.com/en-us/globaliza- tion/ ] 190 Compatibility Testing, Interoperability Testing. The process of testing to determine the interoperability of a software product (the capability to interact with one or more specified components or systems). [ISTQB Glossary] 191 Configuration Testing, Portability Testing. The process of testing to determine the portability of a software product (the ease with which the software product can be transferred from one hardware or software environment to another). [ISTQB Glossary] Подробная классификация тестирования Тестирование программного обеспечения. Базовый курс. © EPAM Systems, 2015–2022 Стр: 87/298 o Совместимость с браузерами и их версиями (кросс-браузерное тести- рование, cross-browser testing 192 ). (C м. также тестирование веб-прило- жений {80} ). o Совместимость с мобильными устройствами (mobile testing 193 ). ( См. также тестирование мобильных приложений {80} ). o И так далее. В некоторых источниках к тестированию совместимости добавляют (хоть и подчёркивая, что это — не его часть) т.н. тестирование соответствия (compliance testing 194 , conformance testing, regulation testing). Рекомендуется ознакомиться с дополнительным материалом по те- стированию совместимости с мобильными платформами в статьях «What is Mobile Testing?» 195 и «Beginner’s Guide to Mobile Application Testing » 196 • Тестирование данных (data quality 197 testing) и баз данных (database integ- rity testing 198 ) — два близких по смыслу вида тестирования, направленных на исследование таких характеристик данных, как полнота, непротиворечи- вость, целостность, структурированность и т.д. В контексте баз данных ис- следованию может подвергаться адекватность модели предметной области, способность модели обеспечивать целостность и консистентность данных, корректность работы триггеров, хранимых процедур и т.д. • Тестирование использования ресурсов (resource utilization testing 199 , effi- ciency testing 200 , storage testing 201 ) — совокупность видов тестирования, про- веряющих эффективность использования приложением доступных ему ре- сурсов и зависимость результатов работы приложения от количества доступ- ных ему ресурсов. Часто эти виды тестирования прямо или косвенно примы- кают к техникам тестирования производительности {88} 192 Cross-browser testing helps you ensure that your web site or web application functions correctly in various web browsers. Typically, QA engineers create individual tests for each browser or create tests that use lots of conditional statements that check the browser type used and execute browser-specific commands. [ https://www.browserstack.com/cross-browser-testing ] 193 Mobile testing is a testing with multiple operating systems (and different versions of each OS, especially with Android), multiple devices (different makes and models of phones, tablets, phablets), multiple carriers (including international ones), multiple speeds of data transference (3G, LTE, Wi-Fi), multiple screen sizes (and resolutions and aspect ratios), multiple input controls (including BlackBerry’s eternal physical keypads), and multiple technologies — GPS, accelerometers — that web and desktop apps almost never use. [ https://www.perfecto.io/blog/mobile-testing ] 194 Compliance testing, Conformance testing, Regulation testing. The process of testing to determine the compliance of the component or system (the capability to adhere to standards, conventions or regulations in laws and similar prescriptions). [ISTQB Glossary] 195 «What Is Mobile Testing?» [ https://www.perfecto.io/blog/mobile-testing ] 196 «Beginner’s Guide to Mobile Application Testing» [ http://www.softwaretestinghelp.com/beginners-guide-to-mobile-application- testing/ ] 197 Data quality. An attribute of data that indicates correctness with respect to some pre-defined criteria, e.g., business expectations, requirements on data integrity, data consistency. [ISTQB Glossary] 198 Database integrity testing. Testing the methods and processes used to access and manage the data(base), to ensure access methods, processes and data rules function as expected and that during access to the database, data is not corrupted or unex- pectedly deleted, updated or created. [ISTQB Glossary] 199 Resource utilization testing, Storage testing. The process of testing to determine the resource-utilization of a software product. [ISTQB Glossary] 200 Efficiency testing. The process of testing to determine the efficiency of a software product (the capability of a process to produce the intended outcome, relative to the amount of resources used). [ISTQB Glossary] 201 Storage testing. This is a determination of whether or not certain processing conditions use more storage (memory) than esti- mated. [ «Software Testing Concepts And Tools», Nageshwar Rao Pusuluri] Подробная классификация тестирования Тестирование программного обеспечения. Базовый курс. © EPAM Systems, 2015–2022 Стр: 88/298 • Сравнительное тестирование (comparison testing 202 ) — тестирование, направленное на сравнительный анализ преимуществ и недостатков разра- батываемого продукта по отношению к его основным конкурентам. • Демонстрационное тестирование (qualification testing 203 ) — формальный процесс демонстрации заказчику продукта с целью подтверждения, что про- дукт соответствует всем заявленным требованиям. В отличие от приёмоч- ного тестирования {84} этот процесс более строгий и всеобъемлющий, но мо- жет проводиться и на промежуточных стадиях разработки продукта. • Исчерпывающее тестирование (exhaustive testing 204 ) — тестирование при- ложения со всеми возможными комбинациями всех возможных входных дан- ных во всех возможных условиях выполнения. Для сколь бы то ни было слож- ной системы нереализуемо, но может применяться для проверки отдельных крайне простых компонентов. • Тестирование надёжности (reliability testing 205 ) — тестирование способности приложения выполнять свои функции в заданных условиях на протяжении заданного времени или заданного количества операций. • Тестирование восстанавливаемости (recoverability testing 206 ) — тестирова- ние способности приложения восстанавливать свои функции и заданный уровень производительности, а также восстанавливать данные в случае воз- никновения критической ситуации, приводящей к временной (частичной) утрате работоспособности приложения. • Тестирование отказоустойчивости (failover testing 207 ) — тестирование, за- ключающееся в эмуляции или реальном создании критических ситуаций с целью проверки способности приложения задействовать соответствующие механизмы, предотвращающие нарушение работоспособности, производи- тельности и повреждения данных. • Тестирование производительности (performance testing 208 ) — исследова- ние показателей скорости реакции приложения на внешние воздействия при различной по характеру и интенсивности нагрузке. В рамках тестирования производительности выделяют следующие подвиды: o Нагрузочное тестирование (load testing 209 , capacity testing 210 ) — иссле- дование способности приложения сохранять заданные показатели ка- чества при нагрузке в допустимых пределах и некотором превышении этих пределов (определение «запаса прочности»). 202 Comparison testing. Testing that compares software weaknesses and strengths to those of competitors' products. [ «Software Testing and Quality Assurance », Jyoti J. Malhotra, Bhavana S. Tiple] 203 Qualification testing. Formal testing, usually conducted by the developer for the consumer, to demonstrate that the software meets its specified requirements. [ «Software Testing Concepts And Tools», Nageshwar Rao Pusuluri] 204 Exhaustive testing. A test approach in which the test suite comprises all combinations of input values and preconditions. [ISTQB Glossary] 205 Reliability Testing. The process of testing to determine the reliability of a software product (the ability of the software product to perform its required functions under stated conditions for a specified period of time, or for a specified number of operations). [ISTQB Glossary] 206 Recoverability Testing. The process of testing to determine the recoverability of a software product (the capability of the software product to re-establish a specified level of performance and recover the data directly affected in case of failure). [ISTQB Glossary] 207 Failover Testing. Testing by simulating failure modes or actually causing failures in a controlled environment. Following a failure, the failover mechanism is tested to ensure that data is not lost or corrupted and that any agreed service levels are maintained (e.g., function availability or response times). [ISTQB Glossary] 208 Performance Testing. The process of testing to determine the performance of a software product. [ISTQB Glossary] 209 Load Testing. A type of performance testing conducted to evaluate the behavior of a component or system with increasing load, e.g. numbers of parallel users and/or numbers of transactions, to determine what load can be handled by the component or system. [ISTQB Glossary] 210 Capacity Testing. Testing to determine how many users and/or transactions a given system will support and still meet perfor- mance goals. [ https://msdn.microsoft.com/en-us/library/bb924357.aspx ] Подробная классификация тестирования Тестирование программного обеспечения. Базовый курс. © EPAM Systems, 2015–2022 Стр: 89/298 o Тестирование масштабируемости (scalability testing 211 ) — исследова- ние способности приложения увеличивать показатели производитель- ности в соответствии с увеличением количества доступных приложе- нию ресурсов. o Объёмное тестирование (volume testing 212 ) — исследование произво- дительности приложения при обработке различных (как правило, больших) объёмов данных. o Стрессовое тестирование (stress testing 213 ) — исследование поведе- ния приложения при нештатных изменениях нагрузки, значительно превышающих расчётный уровень, или в ситуациях недоступности значительной части необходимых приложению ресурсов. Стрессовое тестирование может выполняться и вне контекста нагрузочного тести- рования: тогда оно, как правило, называется «тестированием на раз- рушение» (destructive testing 214 ) и представляет собой крайнюю форму негативного тестирования {79} o Конкурентное тестирование (concurrency testing 215 ) — исследование поведения приложения в ситуации, когда ему приходится обрабаты- вать большое количество одновременно поступающих запросов, что вызывает конкуренцию между запросами за ресурсы (базу данных, па- мять, канал передачи данных, дисковую подсистему и т.д.). Иногда под конкурентным тестированием понимают также исследование работы многопоточных приложений и корректность синхронизации действий, производимых в разных потоках. В качестве отдельных или вспомогательных техник в рамках тестирования производительности могут использоваться тестирование использования ресурсов {87} , тестирование надёжности {88} , тестирование восстанавливаемо- сти {88} , тестирование отказоустойчивости {88} и т.д. Подробное рассмотрение нескольких видов тестирования произво- дительности приведено в статье «Автоматизация тестирования производительности: основные положения и области примене- ния» 216 211 Scalability Testing. Testing to determine the scalability of the software product (the capability of the software product to be upgraded to accommodate increased loads). [ISTQB Glossary] 212 Volume Testing. Testing where the system is subjected to large volumes of data. [ISTQB Glossary] 213 Stress testing. A type of performance testing conducted to evaluate a system or component at or beyond the limits of its antici- pated or specified workloads, or with reduced availability of resources such as access to memory or servers. [ISTQB Glossary] 214 Destructive software testing assures proper or predictable software behavior when the software is subject to improper usage or improper input, attempts to crash a software product, tries to crack or break a software product, checks the robustness of a software product. [«Towards Destructive Software Testing», Kiumi Akingbehin] 215 Concurrency testing. Testing to determine how the occurrence of two or more activities within the same interval of time, achieved either by interleaving the activities or by simultaneous execution, is handled by the component or system. [ISTQB Glossary] 216 «Автоматизация тестирования производительности: основные положения и области применения» [ http://svyatoslav.biz/technologies/performance_testing/ ] |