Первая мысль о том, что это может быть трудно для юнит-теста.Каждый раз, когда вы создаете экземпляр из этого класса, ДОЛЖНА быть база данных, к которой вы можете подключиться, иначе она не сможет работать.
Конечно, метод connect () все еще сложно протестировать, но вы можете протестироватьотдыхайте легко.
Существует метод для вызова метода и создания экземпляра класса в одной строке:
($myDBInstance = new dbcon("localhost", "mirko", "mysecret", "mydb"))->connect();
Другой способ - вызвать статический метод, который делает егоЯсно, это автоматически соединяется, если вам не нравится вышеуказанное решение:
$myDBInstance = dbcon::getInstanceAndConnect("localhost", "mirko", "mysecret", "mydb");
, которое может выглядеть так:
public static getInstanceAndConnect(a,b,c,d) {
$mydbcon=new dbcon(a,b,c,d);
$mydbcon->connect();
return $mydbcon;
}
извините за ленивые аргументы: -)