Testing
Замечание:
The section applies to myslqnd_ms 1.1.0 or newer, not the 1.0 series.
The PECL/mysqlnd_ms test suite is in the tests/
directory of the source distribution. The test suite consists of standard
phpt tests, which are described on the PHP Quality Assurance Teams website.
Running the tests requires setting up one to four MySQL servers. Some tests don't
connect to MySQL at all. Others require one server for testing. Some require
two distict servers. In some cases two servers are used to emulate a
replication setup. In other cases a master and a slave of an existing MySQL replication
setup are required for testing. The tests will try to detect how many servers
and what kind of servers are given. If the required servers are not found, the
test will be skipped automatically.
Before running the tests, edit tests/config.inc to
configure the MySQL servers to be used for testing.
The most basic configuration is as follows.
putenv("MYSQL_TEST_HOST=localhost");
putenv("MYSQL_TEST_PORT=3306");
putenv("MYSQL_TEST_USER=root");
putenv("MYSQL_TEST_PASSWD=");
putenv("MYSQL_TEST_DB=test");
putenv("MYSQL_TEST_ENGINE=MyISAM");
putenv("MYSQL_TEST_SOCKET=");
putenv("MYSQL_TEST_SKIP_CONNECT_FAILURE=1");
putenv("MYSQL_TEST_CONNECT_FLAGS=0");
putenv("MYSQL_TEST_EXPERIMENTAL=0");
/* replication cluster emulation */
putenv("MYSQL_TEST_EMULATED_MASTER_HOST=". getenv("MYSQL_TEST_HOST"));
putenv("MYSQL_TEST_EMULATED_SLAVE_HOST=". getenv("MYSQL_TEST_HOST"));
/* real replication cluster */
putenv("MYSQL_TEST_MASTER_HOST=". getenv("MYSQL_TEST_EMULATED_MASTER_HOST"));
putenv("MYSQL_TEST_SLAVE_HOST=". getenv("MYSQL_TEST_EMULATED_SLAVE_HOST"));
MYSQL_TEST_HOST, MYSQL_TEST_PORT and
MYSQL_TEST_SOCKET define the hostname,
TCP/IP port and Unix domain socket of the default database server.
MYSQL_TEST_USER and MYSQL_TEST_PASSWD
contain the user and password needed to connect to the database/schema
configured with MYSQL_TEST_DB. All configured
servers must have the same database user configured to give access to
the test database.
Using host, host:port or host:/path/to/socket
syntax one can set an alternate host, host and port or host and socket for any
of the servers.
putenv("MYSQL_TEST_SLAVE_HOST=192.168.78.136:3307"));
putenv("MYSQL_TEST_MASTER_HOST=myserver_hostname:/path/to/socket"));