제목 | phpunit관련 질문 드립니다(어제에 이어서 오늘도...) | ||
---|---|---|---|
글쓴이 | 해달봉 | 작성시각 | 2014/08/27 09:02:37 |
|
|||
안녕하세요 어제 phpunit 관련 질문을 올렸던 사람입니다. application/libraries 에 phpUnit test코드를 만들어서 실행을 하는 경우 Call to undefined function get_instance() 에러가 노출이 됩니다. application/tests 라는 디렉토리는 ci가 인식하지 못하는 곳라고 해서 tests폴더 자체를 삭제 하고 그냥 라이브러리 폴더 바로 하위에서 바로 테스트 파일 만들었구요 application/libraries/cheerUpListTest.php application/libraries/bootstrap.php application/libraries/phpunit.xml 이렇게 해놨습니다. phpUnit 설정은 colors="true" convertErrorsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" processIsolation="false" stopOnFailure="false" syntaxCheck="false" verbose="true"> 했습니다. cheerUpListTest 파일의 소스는 class cheerUpListTest extends PHPUnit_Framework_TestCase { private $CI; public function setUp(){ $this->CI =& get_instance(); $this->CI->load->database(); } public function testSelect_function() { $sql = "SELECT * FROM tcheeruplist"; $query = $this->db->query($sql); $result = $query->result(); echo '<pre>'; print_r($result); } } 입니다. |
|||
다음글 | Controller 에 함수인자를 건네 줄수 있을까요? (4) | ||
이전글 | CI phpunit 관련 질문드립니다. (1) | ||
CI_ORL
/
2014/08/27 09:29:53 /
추천
0
|
해달봉
/
2014/08/27 09:47:54 /
추천
0
__construct() 생성자로 변경을 하였으나 , 똑같은 에러가 발생하네요
|
변종원(웅파)
/
2014/08/27 10:15:22 /
추천
0
기존에 개발하실때 클래스나 함수들을 library로 사용하는 경우 어떻게 하시나요?
include해서 사용하죠. 그 라이브러리를 직접 주소로 접근해서 사용하는건 아니죠. ci도 똑같습니다. library에 있는 파일을 직접 접근하는게 아니라 컨트롤러안에서 load(include)해서 사용합니다. 매뉴얼 (http://cikorea.net/user_guide_2.1.0/general/creating_libraries.html) 다시 한번 보시구요. phpunit 클래스를 library에 위치시키고 컨트롤러에서 phpunit을 로딩하고 사용하세요. codeigniter phpunit 으로 검색 안해보셨나요? library의 파일에 get_instance 라는 구문을 넣고 에러가 안나려면 get_instance가 어디에 속해 있는지 알려줘야하죠. 로딩도 안하고 include도 안하는데 어디에 있는 함수인지 어떻게 알까요? 컨트롤러에서 그 라이브러리를 로딩할때 get_instance라는 함수가 어디 있는지 알게 되는겁니다. |
해달봉
/
2014/08/27 10:31:12 /
추천
0
[CI_ORL] , [변종원(웅파)] 님 조언 감사합니다.
제가 바보같은 짓을 했네요 ㅠㅠ 다시한번 해보겠습니다. 감사합니다 |
그 안에서 이것은 무엇이다 라고 정의 하기 시작하는데...
setUp라는 함수에서 정의 하시나 봐요... 신기하다..