Alexander Hultnér - API-schema-based testing with schemathesis
"API-schema-based testing with schemathesis
EuroPython 2020 - Talk - 2020-07-23 - Brian
Online
By Alexander Hultnér
The goal with this talk is to introduce the audience to property-based testing for API’s using schemas to automatically generate test scenarios, enabling them to write more powerful tests faster.
The talk will focus on a subset of the field of property-based testing where we focus on testing by automatically generating properties and test strategies from the API Schemas that we often already have. These tests ensure that our APIs conform to their specified schema and enables us to write a much larger amount of tests in less time.
I will focus on the schemathesis library which leverages the strong hypothesis library as well as the hypothesis-JSONSchema extension strategies, and will in the future also support GraphQL via the hypothesis-graphql strategies. I’m a contributor to schemathesis and currently working on the future GraphQL support with schemathesis creator, Dmitry Dygalo.
I will also compare it with its predecessor “swagger-conformance”, pure property-based testing through hypothesis, schema strategies with hypothesis-graphql and hypothesis-jsonschema, and discuss their advantages and disadvantages. I will also briefly talk about “QuickREST: Property-based Test Generation of OpenAPI-Described RESTful APIs” (https://arxiv.org/abs/1912.09686), the research paper that’s part of the inspiration for these tools.
By focusing on property-based test generation using schemas we already have, I will show that a field like property-based testing, which can seem quite daunting at first, actually can have a low barrier to entry while yielding large amounts of value in return and is useful for most common web projects today.
The talk will show how formal schemas for APIs can and will continue to provide additional value outside the scope of documentation.
License: This video is licensed under the CC BY-NC-SA 3.0 license: https://creativecommons.org/licenses/by-nc-sa/3.0/
Please see our speaker release agreement for details: https://ep2020.europython.eu/events/speaker-release-agreement/
"
Видео Alexander Hultnér - API-schema-based testing with schemathesis канала EuroPython Conference
EuroPython 2020 - Talk - 2020-07-23 - Brian
Online
By Alexander Hultnér
The goal with this talk is to introduce the audience to property-based testing for API’s using schemas to automatically generate test scenarios, enabling them to write more powerful tests faster.
The talk will focus on a subset of the field of property-based testing where we focus on testing by automatically generating properties and test strategies from the API Schemas that we often already have. These tests ensure that our APIs conform to their specified schema and enables us to write a much larger amount of tests in less time.
I will focus on the schemathesis library which leverages the strong hypothesis library as well as the hypothesis-JSONSchema extension strategies, and will in the future also support GraphQL via the hypothesis-graphql strategies. I’m a contributor to schemathesis and currently working on the future GraphQL support with schemathesis creator, Dmitry Dygalo.
I will also compare it with its predecessor “swagger-conformance”, pure property-based testing through hypothesis, schema strategies with hypothesis-graphql and hypothesis-jsonschema, and discuss their advantages and disadvantages. I will also briefly talk about “QuickREST: Property-based Test Generation of OpenAPI-Described RESTful APIs” (https://arxiv.org/abs/1912.09686), the research paper that’s part of the inspiration for these tools.
By focusing on property-based test generation using schemas we already have, I will show that a field like property-based testing, which can seem quite daunting at first, actually can have a low barrier to entry while yielding large amounts of value in return and is useful for most common web projects today.
The talk will show how formal schemas for APIs can and will continue to provide additional value outside the scope of documentation.
License: This video is licensed under the CC BY-NC-SA 3.0 license: https://creativecommons.org/licenses/by-nc-sa/3.0/
Please see our speaker release agreement for details: https://ep2020.europython.eu/events/speaker-release-agreement/
"
Видео Alexander Hultnér - API-schema-based testing with schemathesis канала EuroPython Conference
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
![Anna Wszeborowska - Music transcription with Python](https://i.ytimg.com/vi/9boJ-Ai6QFM/default.jpg)
![Felix Wick/Florian Wilhelm - How to Setup a new Python Project](https://i.ytimg.com/vi/r8Rqp2w_kHk/default.jpg)
![Ruud van der Ham - Simulation of logistic systems in Python with salabim](https://i.ytimg.com/vi/pRAO6J66o9k/default.jpg)
![Jatsu Argarate - Buildout Django eta Fabric. Kasu praktikoa euskarazko tokiko hedabideetan](https://i.ytimg.com/vi/1c5IlIQhiqY/default.jpg)
![Stephan Jaensch - Building mobile APIs with services at Yelp](https://i.ytimg.com/vi/UUkyzCwgqPw/default.jpg)
![Hynek Schlawack - Get Instrumented!](https://i.ytimg.com/vi/1OB0w4b_3l0/default.jpg)
![Sebastian Roll - The Dangers of Outsourcing Software Development](https://i.ytimg.com/vi/fuAtAGPp2DM/default.jpg)
![Fergal Walsh - Rethinking how we build HTTP APIs](https://i.ytimg.com/vi/qTHkNkgFJeg/default.jpg)
![Moshe Goldstein/david dayan - Implementing Parallel Programming Design Patterns using EFL for Python](https://i.ytimg.com/vi/op-L-1GwVYs/default.jpg)
![Mika Boström, Alexander Schmolck - Marge: A bot for better Git'ing](https://i.ytimg.com/vi/9QXACKrJ-1k/default.jpg)
![Peter Hoffmann - PySpark - Data processing in Python on top of Apache Spark.](https://i.ytimg.com/vi/ukW89Dbt5hk/default.jpg)
![Olivier Grisel - Histogram-based Gradient Boosting in scikit-learn 0.21](https://i.ytimg.com/vi/urVUlKbQfQ4/default.jpg)
![Olga Lyashevska - How can machine learning help to predict changes in size of Atlantic herring ?](https://i.ytimg.com/vi/iGMef0eRrdM/default.jpg)
![Marko Samastur - Publish your code so others can use it in 5 easy steps](https://i.ytimg.com/vi/gc9dkktg1gU/default.jpg)
![Anna Veronika Dorogush - CatBoost - the new generation of Gradient Boosting](https://i.ytimg.com/vi/oGRIGdsz7bM/default.jpg)
![Raúl Cumplido - Metaprogramación en Python](https://i.ytimg.com/vi/jSxBHLqeX-A/default.jpg)
![Sarah Bird - The Web is Terrifying! Using the PyData stack to spy on the spies](https://i.ytimg.com/vi/3zWHdyrGlDc/default.jpg)
![Miloslav Pojman - HTTP/3 – Why should I care?](https://i.ytimg.com/vi/vXbP7EmpErE/default.jpg)
![Bruno Paixão - Digital Transformation in the fight against Coronavirus](https://i.ytimg.com/vi/5J_tViVPl3I/default.jpg)
![A. Molina -Web Applications on Python3 and Python2 with TurboGears Part 1](https://i.ytimg.com/vi/NqxpRjqvTIA/default.jpg)
![Petertc Chu - Speak Python with Devices](https://i.ytimg.com/vi/BpgtN8GK1M8/default.jpg)