본문 바로가기
반응형

API12

포스트맨_데이터 기반 테스트 좋은 테스트 케이스를 만들려면 시스템에 대한 다양한 입력을 시도해보는 것이 좋습니다. 자동화는 여러가지를 반복해서 확인하는데에는 좋지만, 각 입력에 대한 별도의 요청을 처리하는데에는 많은 작업이 필요할 수 있습니다. 그래서  많은 작업을 하는방법 대신에 데이터 기반 테스트를 하게 되면 자동화된 테스트의 효율을 높일 수 있습니다. 동등 분할 기법을 사용하여 데이터 기반 테스트를 위한 좋은 입력을 생성하고, 테스트 비교를 위한 유용한 출력을 정의하는 방법에 대해 포스팅해보고자 합니다. 아래에 postman에서 데이터 기반 테스트를 설정하고 응답결과를 파일의 데이터 출력과 비교할 수 있는 데이터 기반 테스트를 설정 및 실행하는 방법에 대해 서술해 보았습니다. 데이터기반 테스트는 API 테스트에만 제한된 개념은.. 2024. 9. 10.
포스트맨에서 테스트 스크립트 작성방법 포스트맨에서 테스트 검증 스크립트를 작성하는 방법에 대해 설명해보고자 한다. 포스트맨은 이것을 위해 자바 스크립트를 사용한다. 포스트맨은 테스트 검증을 위해 자바스크립트를 사용하는 것 외에도 설정 스크립트와 해체 스크립트를 만드는 방법을 제공한다. 이를 사용하여 테스트를 실행하기 전에 몇 가지 설정을 할 수도 있고, 테스트가 완료된 이후에 정리 작업을 할 수도 있다. API response 확인 사용할 예제 코드 : https://swapi.dev/ pm.test method 사용방법 포스트맨에서 Tests 탭을 선택하면 각 요청에 대해 확인할 항목을 정의할 수 있다. 왼쪽 패널에 사용가능한 다양한 snippets이 있다. SWAPI - The Star Wars API What is this? The S.. 2024. 2. 28.
포스트맨을 이용한 보안 테스트 Fuzzing test Fuzzing 혹은 Fuzzing test라고 불리는 것은 프로그램이나 서비스에 무작위로 입력을 하여 예기치 않은 일이 발생하는지 확인하는 개념이다. 단순한 테스트 방법으로, 말이 되는지 안되는지에 대해서는 고려하지 않고 무슨 일이 발생하는지 보기 위해 다른 입력을 계속 시도한다. API가 프로그램적으로 상호작용하도록 설계되었기 때문에, 이러한 종류의 테스팅에 매우 적합한 테스트 방법이다. 아이러니한 점은 Fuzzing은 강력한 테스트 기법이지만 해킹 기법이기도 하다는 점이다. 해커들이 API에서 취약점을 찾을 수 있는지 확인하기 위해 Fuzzing을 시도해 볼 때가 있다. - Command injection, 명령어 삽입 API를 이용하면 웹 서비스에 명령어를 보낼 수 있다. 보.. 2024. 1. 31.
API_ Authorization & Authentication API에서의 권한부여(Authorization) 권한부여란 우리가 주어진 사용자가 어떤 일을 하도록 허락하는지를 결정하는 것을 의미한다. 예를 들어, 학생들은 자신의 학점만 볼 수 있고 교사인 다른 사용자는 다른 데이터도 볼 수 있을 것이고 데이터의 수정과 입력이 가능할 것이다. 권한부여란 어떤 일을 할 수 있는 허용을 받았는지를 결정하는 것이라고 할 수 있다. API에서 이것은 엔드포인트에서 다른 엔드포인트까지 특정 방식을 사용할 수 있는 권한을 부여받았는지를 결정하는 형식을 취할 수 있다. 예를 들어, 어떤 사용자는 어떤 엔드포인트에는 아예 사용할 수 없는 반면 어떤 경우에는 엔드포인트를 사용하여 데이터를 얻는 것이 허용될 수 있다. API 보안에 있어서 인증 및 권한 부여는 매우 중요한 부분이다. .. 2024. 1. 1.
Open API와 API 명세 컴퓨팅의 역사는 점점 더 높은 수준의 추상화의 길이다. API가 유명해지면서, 소스코드에 대해 아무것도 모르는 유저들이 원격 서비스와 쉽게 사용할 수 있도록 API의 작동방식을 지정할 수 있는 인터페이스가 개발되는데 이를 API 명세 언어(API specification languages)라고 부른다. 이 언어는 API 개발을 다양한 방향으로 돕는다. 클라이언트와 API를 만드는 사람들 사이에 정보를 더 쉽게 공유할 수 있게 해주고 또한 많은 자동화를 가능하게 해준다. API Specifications 일부 API는 엄격하게 정의된 프로토콜을 따른다. 하지만 RESTful API는 일반적인 원칙들이 제시되어 있지만 지켜야 하는 엄격한 프로토콜은 없다.SOAP API는 엄격한 프로그래밍 규칙에 따라 구조를.. 2023. 12. 8.
API_용어와 유형 APIs (Application Programming Interfaces) : 개념적으로는 소프트웨어 애플리케이션간에 서로 상호작용하는 방법을 말한다. - 인터페이스 역할: API는 두 개 이상의 소프트웨어 컴포넌트 간의 인터페이스 역할을 한다. 이것은 서로 다른 프로그램이나 시스템이 데이터를 요청하고 주고 받을 수 있는 방법을 정의한다. - 기능 제공: API는 특정 기능 또는 작업을 수행할 수 있는 메서드, 함수 또는 명령어를 제공한다. 이것은 다른 소프트웨어에서 해당 기능을 호출하거나 사용할 수 있도록 한다. - 추상화: API는 구체적인 내부 동작을 추상화하여 개발자가 내부 구현에 대해 자세한 지식이 없어도 사용할 수 있도록 한다. 이것은 소프트웨어 개발을 단순화하고 효율적으로 만든다. - 표준화.. 2023. 10. 25.
Postman_data값 가져오기 안녕하세요. 오늘은 postman에서 test문을 작성할 때 response로 받은 데이터 값을 확인하는 방법을 포스팅해보고자 합니다. 제가 오늘 postman에서 다룰 내용은 reponse에 나온 body에 특정 데이터를 콘솔 로그에 찍어서 확인한다던지, 아니면 가져온 data가 기대한 값과 일치하는지 혹은 조건문이나 반복문에 사용할 수 있는 방법을 이야기해보고자 합니다. 사실 jsonData를 가져오면 나머지는 응용하기만 하면 되는 부분이라서 같은 하나의 내용이 다 일거 같습니다ㅎ 먼저 가장 간단한 예제를 보여드리고자 합니다. 제가 사용하는 request문은 카운트를 response로 보여주고 있었는데요. 정말 response에 딱 숫자 카운트만 노출됩니다. 이렇게 jsondata를 한번에 가져오는 .. 2022. 10. 15.
Postman_test문에서 status 확인 안녕하세요. 오늘은 postman에서 request에서 test문을 작성하는 방법에 대해 포스팅해보고자 합니다. request를 보낼 때 정상적으로 갔는지 원하는 결과가 나왔는지 확인하는 부분을 test문에 작성해서 확인할 수 있습니다. 보통 간단한 문구는 아래 postman 사이트에서 확인할 수 있고, 그게 아니더라도 postman > test에서 snippets에서 선택해서 사용할 수 있습니다. https://learning.postman.com/docs/writing-scripts/test-scripts/ Writing tests | Postman Learning Center Writing tests: documentation for Postman, the collaboration platform .. 2022. 10. 10.
Postman_포스트맨 툴 사용법 안녕하세요. postman에 관한 방법에 대해 다뤄보려고 합니다. api 테스트를 한다 하면 들어봤을 만한 툴로는 포스트맨이 제일 유명한 거 같습니다. 우연치 않은 기회로, 이번에 postman으로 백엔드 qa를 하게 되었는데요. 그래서 겪었던 크고 작은 문제들의 해결방법과 사용방법 및 활용했던 방법들에 대해 공유해보고자 합니다. 정말 다른 기타 공부없이 처음 해보는데 안될 때마다 구글링과 주먹구구식으로 진행했기 때문에, 이 방법보다 더 좋은 방법이 있을 수도 있습니다! 우선 포스트맨은 웹으로도 사용가능하고 다운로드해서 앱으로도 사용이 가능합니다. https://www.postman.com/ Postman API Platform | Sign Up for Free Postman is an API platf.. 2022. 10. 5.
Fiddler_브라우저 트래픽 캡처 인터넷 익스플로러, 크롬, 사파리는 자동으로 기본 프록시 서버로 트래픽을 전송하기 때문에 피들러를 사용 시 이 브라우저들의 트래픽을 자동으로 캡처하고 있게 된다. 다른 응용 프로그램의 트래픽 캡처 윈도우에어서 가장 많이 사용되는 http/https/ftp 네트워크 라이브러리는 WinINET이다. WinINET은 인터넷 익스플로러를 비롯한 수만 개의 응용 프로그램에서 사용한다. 피들러는 캡처를 시작할 때 직접 WinINET의 프록시 설정을 다루기 때문에 일반적으로 WinINET을 사용한 응용프로그램은 피들러와 잘 동작한다. WinHTTP WinHTTP는 WinINET와 비슷하지만 윈도우 서비스 등에서 조용히 동작하도록 설계되었다. 응용 프로그램을 WinINET를 사용하는 경우에는 WinHttpOpen이나 .. 2022. 9. 30.
반응형