소프트웨어 테스트에 필요한 기술은 무엇입니까? 고급 소프트웨어 테스트 엔지니어를 개발하는 방법...


머리말

소프트웨어 테스트 엔지니어를 위한 필수 기술

1. 협업 개발 능력
①프로젝트 관리(SVN, Git)
②데이터 분석 능력(Fiddler, Charles, 브라우저 F12).

2. 인터페이스 테스트
① 개념 및 인터페이스 테스트 원리 개념(개념, 인터페이스 테스트 원리)
② 인터페이스 테스트 도구(Jmeter, Postman, SoapUI)
③ 공통 인터페이스 프로토콜(HTTP, HTTPS, 웹 서비스/SPAP)
④ HTTP 프로토콜 개념(URL, 요청 헤더, 요청 본문, 응답 헤더, 상태 코드)
⑤일반적인 HTTP 요청 방법(GET, POST, DELETE, PUT)
⑥일반적인 데이터 상호 작용 형식(application/x-www-form-urlencoded, multipart/form-data, application/json, text/xml)
⑦ HTTP 상태 코드(1XX, 2XX, 3XX, 4XX, 5XX)
⑧공통 인증 방법(토큰, 세션, 쿠키)
⑨인터페이스 테스트 케이스(비즈니스 기능, 경계 분석, 매개변수 조합, 예외, 성능 보안)
⑩버그 분석 및 포지셔닝(인터페이스 요청, 응답 내용, 데이터베이스 테이블 구조 분석, 추가, 삭제, 수정 기본 동작, 로그 분석)
⑪인터페이스 테스트 보고서

3. 소프트웨어 테스팅의 기본 지식
①소프트웨어 테스팅의 정의(소프트웨어 테스팅의 개념)
②소프트웨어 라이프 사이클(워터폴, V, W, 애자일 개발)
③소프트웨어 테스팅의 분류(블랙박스 테스팅, 화이트박스 테스팅, 통합 테스팅, 시스템 테스팅, 성능) 테스트, 보안 테스트, 자동화 테스트)
④ 소프트웨어 테스트 프로세스(테스트 요구사항 분석 단계, 테스트 계획 단계, 테스트 설계 단계, 테스트 실행 단계, 테스트 평가 단계) ⑤
소프트웨어 테스트 방법(동등 클래스, 경계값, 인과도, 결정표) , 시나리오 방식, 오류 추측 방식)

⑥ 소프트웨어 테스트 케이스(유스케이스 번호, 테스트 기능, 테스트 제목, 유스케이스 우선순위, 전제조건, 테스트 데이터, 테스트 단계, 예상 결과, 실제 결과)

⑦버그의 정의(버그 수명 주기, 버그 유형, 버그 심각도 수준, 버그 관리, 버그 제출, 버그 추적)

4. Python 자동화 기술
①python 편집기(Cpython, Ipython, Jpython, pypy, Ironpython)
②python 데이터 유형(float, string, integer, Boolean, list, dictionary, tuple, set)
③python 연산자(1. 산술 연산자: +, —, *, /, % 2. 논리 연산자: and, or, not 3. 멤버 연산자: in, not in 4. 할당 연산자: =, +=, —= 5. 비교 연산자: <, >, <=, <= , ==, !=)

④함수: 1. 정의: def 함수 이름() 2. 매개변수 종류: 필수/기본값/가변 길이 3. 매개변수 전달 방법: 위치/키워드 4. 함수 사용 5. 함수 반환 값

⑤파일 처리: 1. 파일 열기: 열기/열기 포함...as 2. 읽기 모드: readline/readlines/read 3. 쓰기 모드: 쓰기 4. 추가 모드

⑥제어 흐름: (if 판단, for 루프, while 루프)
⑦예외 처리(try, except, else, finally)
⑧ 객체 지향(클래스, 속성, 메소드, 객체, 상속, 파생, 클래스 속성 객체 속성, 클래스 메서드, 클래스 인스턴스) 메서드, 정적 메서드)

5. 리눅스 기본 명령어
①리눅스 기본 명령어 : (권한, 파일 조회, 프로세스, 포트, 방화벽 동작, 디렉토리 전환, 새 파일, 파일 수정, 사용자 전환, 로그 보기) ②환경 구성 : (JDK 설치, 환경변수 설정, Tomcat 설치
) , MySQL 설치)
③프로젝트 배포: (conf는 구성 파일, jdbc 구성 파일을 저장하고 webapps는 기본적으로 war 패키지를 저장하고 서비스를 다시 시작합니다.)

6. 데이터베이스 기술
MySQL 데이터베이스: (데이터베이스에 연결, 데이터베이스 테이블 생성, 추가, 삭제, 수정, 다중 테이블 연결(동등 조인), 왼쪽 조인/오른쪽 조인, 그룹 쿼리)

7. 기본 성능
기본 성능 지식: (성능 이론, 운영 체제, 네트워크 성능 테스트 도구, 서버, 데이터베이스)

8. 기타 네트워크 지식
①TCP/IP 4계층 프로토콜 회선: (네트워크 인터페이스 계층, 네트워크 계층, 전송 계층, 응용 계층)
②방화벽: (패킷 필터링 방화벽, 상태 만료 방화벽, 응용 게이트웨이 방화벽, ACL, NAT)
③VPN: ( 레이어 2 VPN: L2TP, 레이어 3 VPN: IPsec, 레이어 7 VPN: SSL, VPN)

9. 네트워크 지식 OSI 7계층 네트워크 모델
① 물리 계층: (트위스트 페어, 전파, 광섬유, 비트 스트림)
② 데이터 링크 계층: (MAC 주소, 스위칭: VLAN/Trunk/STP, 프레임)
③ 네트워크 계층: (IP 프로토콜 : IP 서브넷/서브넷 마스크/IP 분류/IP v6, ARP 프로토콜, 라우팅 프로토콜: 정적 라우팅 프로토콜/동적 라우팅 프로토콜, ICMP 프로토콜) ④전송 계층: (TCP 프로토콜, UDP 프로토콜, 포트) ⑤ 세션 계층 ⑥
프레젠테이션
계층

응용 계층: (HTTP 프로토콜, HTTPS 프로토콜, DNS 프로토콜, FTP 프로토콜, FTP 프로토콜)

10. APP 특수 테스트 기능
①앱 성능 테스트: (GT, emmagee, itest)
②앱 성능 테스트 모니터링 지표: (response time, memory, cpu, fps, ps, traffic)
③앱 안정성 테스트-monkey: (-v, -p , -s, –throttle, –randomize-throttle, –ignore-crashes, –ignore-timeouts, monkey API)
④앱 로그 분석:
네트워크 유형: WIFI/5G/4G/3G/2G
네트워크 없음: 연결이 끊겼다가 다시 연결됨./ 로컬 데이터 저장
지연, 패킷 손실: 응답 시간/시간 초과 재연결/페이지 렌더링 무결성
취약한 네트워크 테스트 도구: Fiddler, Charles, 네트워크 에뮬레이터, Xcode
앱 성능 테스트 모니터링 지표: (adb, adb logcat, Trace 파일)

소프트웨어 테스트 엔지니어 개발 경로

1. 주니어 테스트 엔지니어는
컴퓨터 과학 학위가 있거나 수동 테스트 경험이 있는 개인을 이제 막 시작하는 사람입니다. 테스트 스크립트를 개발하고 테스트 수명 주기 및 테스트 기술에 익숙해집니다.

2. 테스트 엔지니어/프로그램 분석가
1~2년 경력의 테스트 엔지니어 또는 프로그래머. 자동화된 테스트 스크립트를 작성하고 테스트 프로그래밍의 초기 리드 역할을 합니다. 프로그래밍 언어, 운영 체제, 네트워킹 및 데이터베이스 기술을 확장하십시오.

3. 수석 테스트 엔지니어/프로그램 분석가
3~4년 경력의 테스트 엔지니어 또는 프로그래머. 테스트 또는 프로그래밍 표준 및 절차를 개발 또는 유지 관리하고, 동료 검토를 수행하고, 다른 주니어 테스트 엔지니어 또는 프로그래머에게 조언자 역할을 합니다.

4. 테스트 그룹의 책임자는
4~6년 경력의 테스트 엔지니어 또는 프로그래머입니다. 1~3명의 테스트 엔지니어 또는 프로그래머 관리를 담당합니다. 일부 일정 및 작업 크기 조정/비용 추정 책임을 맡습니다.

5. 테스트/프로그래밍 담당자는
6-10년 경력의 테스트 엔지니어 또는 프로그래머입니다. 8~10명의 기술자를 관리합니다. 스케줄링, 작업 크기/비용 추정, 일정 및 예산 목표에 따른 제품 제공을 담당합니다.

6. 테스트/품질 보증/개발(프로젝트) 매니저는
10년 이상의 경력을 가지고 있습니다. 8명 이상이 참여하는 하나 이상의 프로젝트를 관리합니다. 이 영역(테스트/QA/개발) 내에서 전체 개발 수명 주기 비즈니스를 담당합니다.

7. 프로그램 관리자
15년 이상의 개발 및 지원(테스트/품질 보증) 활동 경험. 여러 프로젝트 및 전체 개발 수명 주기에서 작업하는 사람들을 관리합니다. 프로젝트 방향 파악 및 손익 책임을 담당합니다.

다음은 내가 컴파일한 2023년에 가장 완벽한 소프트웨어 테스트 엔지니어 학습 지식 아키텍처 시스템 다이어그램입니다.

1. Python 프로그래밍 입문부터 숙달까지

사진 설명을 추가해주세요

2. 인터페이스 자동화 프로젝트 실전

사진 설명을 추가해주세요

3. 웹 자동화 프로젝트의 실전

사진 설명을 추가해주세요

4. 앱 자동화 프로젝트의 실전

사진 설명을 추가해주세요

5. 1차 제조사 이력서

사진 설명을 추가해주세요

6. DevOps 시스템 테스트 및 개발

사진 설명을 추가해주세요

7. 일반적으로 사용되는 자동화 테스트 도구

사진 설명을 추가해주세요

여덟, JMeter 성능 테스트

사진 설명을 추가해주세요

9. 요약(마지막에 약간의 놀라움)

현실의 부침에 휘둘리지 말라 투쟁은 난관을 이기는 예리한 검이요 실패의 그림자에 그림자를 드리우지 말라 투쟁은 빛을 내는 무대이기 때문이다. 끈질기게 추구하고, 열정을 불태우고, 자신을 믿고, 용감하게 앞으로 나아가십시오.

꿈을 쫓는 길에서 투쟁은 산을 오르는 우리의 힘이고 늪을 건너는 용기입니다. 앞으로의 길이 아무리 우여곡절이 있더라도 확고한 신념을 가지고 열심히 노력해야만 우리의 영광스러운 장을 그리고 꿈을 현실로 만들 수 있습니다!

장애물을 극복하고 끝없이 투쟁하며 정상에 오르고 절대 포기하지 마십시오. 투쟁의 길은 험난할지라도 끈질기게 노력해야만 끝없는 빛을 얻을 수 있습니다. 용감하게 꿈을 쫓고, 마음에 열정을 불태우고, 투쟁이 빛을 발하고, 인생에서 가장 아름다운 꽃을 피워라!

추천

출처blog.csdn.net/csdnchengxi/article/details/131898588