• 제목/요약/키워드: 소프트웨어 테스팅

검색결과 351건 처리시간 0.03초

파일 퍼징을 이용한 SW 취약점 분석 (Software Vulnerability Analysis using File Fuzzing)

  • 김상수;강동수
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2017년도 제56차 하계학술대회논문집 25권2호
    • /
    • pp.29-32
    • /
    • 2017
  • 보안 취약점을 악용하여 소프트웨어를 무력화하는 사이버 공격이 증가함에 따라, 조기에 소프트웨어의 취약점을 발견하고 분석하는 보안 테스팅에 대한 중요성이 높아지고 있다. 보안 테스팅의 자동화된 방법 중 하나인 퍼징 기법은 소프트웨어의 입력에 타당하지 않은 무작위 값을 삽입하여 해당 소프트웨어의 예외 즉, 잠재적인 취약점을 발견할 수 있다. 본 논문은 파일 퍼징 과정에서 효율적인 파일 변이 방법을 제안하고 이를 활용한 퍼징 기법을 통해 소프트웨어의 보안성을 높이고자 한다.

  • PDF

클래스 노드 분석에 의한 객체 지향 소프트웨어 회귀 테스팅 (Object-Oriented Software Regression Testing by Class Node Analysis)

  • 권영희;이인혁;구연설
    • 한국정보처리학회논문지
    • /
    • 제6권12호
    • /
    • pp.3523-3529
    • /
    • 1999
  • 본 논문에서는 메소드를 기본 단위로 하는 객체 지향 소프트웨어의 개선된 선택적 회귀 테스팅 방법을 제안한다. 테스팅 방법은 세 단계로 구성하였다. UML 표기법을 이용하여 변경 전 프로그램과 변경 후 프로그램의 객체 관계 그래프와 클래스 의존 그래프(Class Dependency Graph)를 정의한 후, 의존 그래프의 노드 비교를 통하여 변경된 노드와 변경에 의하여 영향을 받는 노드들을 찾는다. 변경 전 테스트케이스 테이블에서 변경된 노드와 변경에 의해 영향을 받는 노드들을 통과하는 테스트케이스를 선택하여 회귀 테스팅을 위한 테스트케이스 집합을 구성한다. 제안한 테스팅 방법을 사용함으로써 테스트해야할 테스트케이스 수가 줄어들고, 변경 전 프로그램의 테스트케이스를 재사용 함으로써 테스팅의 시간과 비용을 절감할 수 있다.

  • PDF

MVC 아키텍처 기반 애플리케이션의 GUI 테스팅 (GUI Testing for MVC Architecture based Applications)

  • 주희주;이찬근
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제24권1호
    • /
    • pp.1-7
    • /
    • 2011
  • MVC는 유지보수가 쉬워 효율적인 개발이 가능한 아키텍처이다. 웹과 PC환경의 애플리케이션뿐만 아니라 모바일 애플리케이션 개발에 많이 적용됨에 따라 그에 대한 테스팅 또한 중요하다. 기존에 MVC 아키텍처를 적용한 개발에 초점을 둔 연구는 많았으나 MVC 아키텍처의 특성을 고려한 효율적인 테스팅을 위한 연구는 많지 않았다. 따라서 본 논문에서는 MVC 아키텍처 기반 애플리케이션의 효율적이고 정확한 테스팅을 위한 연구를 진행한다. 모델-뷰-컨트롤러의 융합된 상태를 담았던 기존의 상태 다이어그램을 뷰 상태와 모델-컨트롤러 상태 다이어그램으로 분리하고 테스트 케이스를 작성한 후, 테스트를 진행한다.

  • PDF

CRESTIVE-DX: 임베디드 소프트웨어에 대해 테스트케이스 생성을 지원하는 분산 Concolic 테스팅 도구 (CRESTIVE-DX: Design and Implementation of Distrusted Concolic Testing Tool for Embedded Software)

  • 임혜린;최한솔;김효림;홍신
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제9권8호
    • /
    • pp.229-234
    • /
    • 2020
  • 본 논문은 임베디드 소프트웨어에 대한 Concolic 테스팅을 효과적이고 효율적으로 지원하기 위해 임베디드 타겟(target) 시스템과 호스트(host) 시스템의 분산적이고 동시적으로 테스트 생성을 위한 작업을 수행하는 Concolic 테스팅 도구의 설계와 구현 사례를 소개한다. 소개하는 테스트 케이스 생성 도구는 Concolic 테스팅 과정 중 (1) 임베디드에 종속적인 특성을 갖는 테스트검증 대상 프로그램의 실행 부분은 임베디드 타겟 시스템에서 수행하고, (2) 시스템에 비종속적인 실행 부분인 탐색 전략, 제약식 해법기 실행 과정은 계산성능이 좋은 호스트 시스템에 분산하고, 독립적인 단계를 동시적으로 실행하도록 기존 Concolic 도구를 개선하였다. Arm Cortex A54 아키텍쳐의 임베디드 타겟 시스템과 x86-64 아키텍쳐의 호스트 시스템을 대상으로 본 기법을 구현하여 오픈소스 C 프로그램의 Grep, Busybox Awk, Busybox Ed를 대상으로 실험한 결과, 기존 도구 보다 1.59~2.64배 테스트케이스 생성속도가 향상됨을 확인할 수 있었다.

임베디드 소프트웨어의 테스팅과 모니터링을 위한 RIOS 기반 어플리케이션 구조 설계 (Architecture Design of RIOS-based Application for Testing and Monitoring Embedded Software)

  • 이성희;김덕엽;윤보람;이우진
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2017년도 춘계학술발표대회
    • /
    • pp.665-668
    • /
    • 2017
  • 임베디드 소프트웨어의 개발은 실제 어플리케이션이 수행되는 대상 시스템이 아닌 호스트 시스템에서 개발되기 때문에 개발 중 테스팅을 수행하기 어렵다. 또한 대상 시스템에서 어플리케이션이 실행될 때 결함 또는 오류가 발견되면 이를 재현하기 어렵다. 이러한 문제를 해결하기 위한 기존의 연구로는 RTOS 시뮬레이터를 사용하거나 모니터링 시스템을 추가하여 임베디드 소프트웨어의 동작을 확인한다. 하지만 RTOS 시뮬레이터는 기능 테스트만 가능하고 실직적인 시간 추정이 불가능하다. 또한 임베디드 소프트웨어에 모니터링 시스템을 추가하게 되면 어플리케이션의 동작에 영향을 주기 때문에 실시간 시스템의 제약 조건을 확인하기 어렵다. 따라서 본 논문에서는 임베디드 소프트웨어의 RIOS 기반 어플리케이션 구조를 제안하여 호스트 시스템에서 대상 시스템의 테스팅과 모니터링이 가능함을 보인다.

컴포넌트 테스팅을 위한 Web Service의 구현 (An Implementation of Web Service for Component Testing)

  • 박세희;진영택
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2004년도 춘계학술발표대회
    • /
    • pp.317-320
    • /
    • 2004
  • 컴포넌트를 기반으로 하는 소프트웨어 개발에 대한 많은 관심은 컴포넌트가 요구 사항에 명시된대로 동작하는지를 테스팅 하는 일과 테스트된 컴포넌트 조립하여 어플리케이션을 개발하는 일에 주어지고 있다. 본 논문에서는 웹 서비스 기술을 이용하여 컴포넌트 구매자에게 후보 COM 컴포넌트를 편리하게 테스팅할 수 있는 테스팅 환경의 구현에 대해 서술한다. 이를 통해 컴포넌트 제공자 및 사용자는 컴포넌트의 신뢰성과 이해성을 증진시킬 수 있다.

  • PDF

Aspect 컴포넌트를 이용한 임베디드 소프트웨어의 모듈 단위 On-The-Fly 테스팅 (An On-The-Fly Testing Technique of Embedded Software using Aspect Components)

  • 김종필;홍장의
    • 정보처리학회논문지D
    • /
    • 제15D권6호
    • /
    • pp.785-792
    • /
    • 2008
  • 임베디드 소프트웨어의 테스팅에 대한 다양한 기술 발전에도 불구하고 로봇, 위성 등의 응용 시스템에서는 여전히 빈번한 결함이 발생하고 있다. 이러한 결함의 근본적인 원인은 호스트 상의 테스트 과정에서 발견되지 못한 결함이 타겟 시스템으로 탑재되는 소프트웨어와 함께 내장되기 때문이다. 따라서 이러한 결함으로 인하여 발생할 수 있는 문제를 예방하기 위해서는 타겟 시스템이 동작하는 실 운영 환경에서 소프트웨어의 동작을 테스트하는 접근 방법이 필요하다. 본 연구에서는 Aspect 컴포넌트를 통해 임베디드 소프트웨어의 실행 시점에 기능 및 성능 요소들을 테스트하는 On-The-Fly 테스팅 방법을 제안하였다. 제안한 방법은 호스트상의 테스팅에서 예측하지 못했던 입력 조건에 대한 실제적인 테스트가 가능하며 시스템의 실 운영 과정에서 발생할 수 있는 오동작을 예방하는 기능과 테스트 코드에 대한 높은 재사용성을 제공하는 장점이 있다.

국내 소프트웨어 개발 업체의 품질 조직 및 인원에 관한 연구 (A Study of Quality Organization and People Within Software Development Company)

  • 이상복;송기평;신석규
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2010년도 추계학술대회
    • /
    • pp.549-551
    • /
    • 2010
  • 좋은 품질의 소프트웨어를 개발하기 위해서는 소프트웨어 테스팅이 반드시 수행되어야 한다. 국내 소프트웨어 개발 업체의 조직 구성을 보면 소프트웨어 품질을 담당하는 조직이 QA 및 QC란 명칭으로 조직되어 있고 품질 및 테스트에 대한 전반적인 업무를 수행하고 있다. 하지만 GS(Good Software)시험인증을 받은 소프트웨어 개발 업체를 대상으로 품질 및 테스트 조직 유무, 개발자 비율, 테스터 비율을 조사한 결과 소프트웨어 품질 및 테스트 조직 구성이 미흡하며, 전문 테스트 인력을 보유하지 않고, 소프트웨어 품질을 개발자의 능력에 의지하는 것을 확인 할 수 있다. 품질이 좋은 소프트웨어를 개발하려면 품질 및 테스트 조직이 구성되어야 하고, 개발자가 아닌 전문 테스트 인력을 보유하여 체계적으로 소프트웨어 품질을 관리해야 하지만 국내 소프트웨어 개발 업체는 소규모, 품질 인식 부족 등으로 인해 소프트웨어 품질 조직 및 인력을 확보하지 못하고 있는 실정이다. 본 논문에서는 국내 소프트웨어 개발 업체의 품질을 담당하는 조직 및 인원 상황을 분석하여 소프트웨어 개발 업체의 품질 조직 및 인력 현황을 보여주고, 체계적인 소프트웨어 품질 관리를 위한 방법을 제시해 본다.

  • PDF

소프트웨어 테스팅에서 위험 기반 호출 그래프를 이용한 위험 식별 기법 (A Risk Identification Method Using Risk-based Call Graph in Software Testing)

  • 민복기;박지수;한금주;손진곤
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 춘계학술발표대회
    • /
    • pp.607-610
    • /
    • 2015
  • 소프트웨어 테스팅의 표준인 위험 기반 테스팅은 품질에 영향을 미칠 것으로 예상되는 위험들을 식별하고 분석한 결과를 바탕으로 효과적인 테스트 전략을 세우는 방법이다. 성공적인 위험 기반 테스팅을 위해서는 위험을 조기에 식별하는 것이 중요하다. 위험 식별은 하나의 프로그램 혹은 프로젝트에 따라 이해관계자의 리뷰를 통해 주관적으로 추출하는 방법을 주로 사용한다. 그러나 이는 짧은 개발주기 안에서 변화되는 위험을 즉시적으로 식별하기 어렵다. 본 논문에서는 위험 기반 호출 그래프를 이용하여 위험을 초기에 식별할 수 있는 방법을 제안한다.

소프트웨어 품질 리스크의 정량화에 관한 연구 (A Study on Quantifying of Software Quality Risk)

  • 윤진우;권원일;권호열
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 춘계학술발표대회
    • /
    • pp.1027-1030
    • /
    • 2010
  • 소프트웨어 테스팅에서 리스크 기반 테스팅은 리스크 식별, 리스크 분석, 리스크 계획, 리스크 추적의 4 단계로 전개되며, 특히 마지막 단계인 리스크 추적 단계에서는 식별된 리스크가 테스팅 진행과정을 거치면서 어느 정도 완화되었는지를 확인하고 현재의 리스크 완화 정도에 따라 적절하게 대응하는지를 모니터링 해야 하는 중요한 단계이다. 하지만 리스크 추적 단계에서 필요한 리스크 완화 수치가 정의되지 않아 사용자들은 테스트 실행율 또는 결함 해결율 등을 리스크 완화 수치의 대안으로 사용하고 있다. 본 논문에서는 리스크 추적 단계에서 사용할 수 있는, 리스크의 완화 정도를 수치화한 "리스크 해결 지수"의 산출 과정을 수식과 함께 제시하고 그 의미를 설명하였다. 그리고 예시를 통해 리스크 수치화에 대한 이해를 돕고, 리스크 수치화 관련 차트를 몇 가지 제시하여 실무에의 응용 통찰력을 제공한다. 리스크를 수치화한 "리스크 지수"는 테스팅 조직의 의사결정에 활용할 수 있는 객관적이고 설득력있는 정보로서 프로젝트 전반에 걸쳐 그 활용 가치가 높다.