2017-03-28 6 views
1

내 프로젝트의 기본 테스트를 수행하기 위해 SimpleTest를 사용하고 있습니다. 페이지 자체에 대한 기본적인 검사를 수행하여 개발 과정에서 문제가 계속 발생하는지 확인하고 싶습니다. 그래도 몇 가지 문제가 발생했습니다.예기치 않은 PHP 오류 [simpletest/socket.php 255 행]에서 [fclose()가 매개 변수 1이 리소스로, 부울이 주어진다] 심각도 [2]

먼저 WebTestCase 클래스를 사용해 보았습니다. Google에 연결할 때 403 오류가 발생했으며 아래 오류와 동일한 오류가 발생했습니다. SimpleTest에서 제공 한 일반 UnitTestCase 및 SimpleBrowser 도우미 클래스를 사용하도록 전환했습니다. 이걸 사용하면 문제없이 google에 연결할 수 있지만 내 사이트에 접속할 때도 동일한 오류가 발생합니다.

예기치 PHP 오류 [FCLOSE()는 매개 변수 1 자원이 될 것으로 예상 부울 소정] 심각도 [2] 결국 [simpletest/socket.php 라인 255]

class TestOfBasicFunctionality extends UnitTestCase 
{ 
    function testGoogleBrowser() 
    { 
     $browser = &new SimpleBrowser(); 
     $browser->get('https://www.google.com'); 
     $this->assertEqual($browser->getTitle(), 'Google'); 
     $this->assertEqual($browser->getResponseCode(), 200); 
    } 

    function testIndexBrowser() 
    { 
     $browser = &new SimpleBrowser(); 
     $browser->get('https://subdomain.mywebsite.com/'); 
     $this->assertEqual($browser->getResponseCode(), 200); 
    } 
} 

에서 , 나는 잘못되어 가고있는 것을 이해하지 못한다. 코드가 복잡하다면 내가 잘못한 것을 이해할 수 있습니다. 그러나 이것들은 매우 간단한 테스트이며 실수가 없습니다. 내 생각에 연결이 일어나지 않도록하는 설정이 서버에 있습니다.

아무도 도와 줄 수 있습니까? 이 SimpleTest 문제, 내 코딩 오류 또는 서버 설정 문제가 있습니까?

답변

0

당신은 그것을 시도 후 : simpletest/socket.php 라인 (255)에 fopen is not working on my server

당신이 해결책으로 문제를 해결하지,하지만 당신은 테스트를 유지할 수 있습니다, 아래의 코드를 시도 할 수 있습니다

...

을 시도해보십시오.

function close() { 
    $this->is_open = false; 
    if(is_resource($this->handle)){ 
     return fclose($this->handle); 
    }else{ return true; } 
} 

그런 다음 테스트를 실행할 수 있습니다.