To change which database is being targeted, the web.config file must be edited, and at a minimum there are 3 options which must be changed to support each database engine - as per the table below:
Database Product | Migrator Provider | NHibernate Driver | NHibernate Dialect |
---|---|---|---|
MySQL | Migrator.Providers.Mysql.MysqlDialect | NHibernate.Driver.MySqlDataDriver | EnterpriseTester.Core.Dialects.MySqlDialectEx, EnterpriseTester.Core |
Oracle 10g/11g (Unmanaged Driver) | Migrator.Providers.Oracle.OracleDialect | NHibernate.Driver.OracleDataClientDriver | NHibernate.Dialect.Oracle10gDialect |
Oracle 10g/11g (Managed Driver) | Migrator.Providers.Oracle.OracleManagedDriverDialect | EnterpriseTester.Core.Dialects.OracleManagedDataClientDriver, EnterpriseTester.Common | NHibernate.Dialect.Oracle10gDialect |
PostgreSQL | Migrator.Providers.PostgreSQL.PostgreSQL82Dialect | NHibernate.Driver.NpgsqlDriver | NHibernate.Dialect.PostgreSQL82Dialect |
SQLServer 2005 (and above) | Migrator.Providers.SqlServer.SqlServer2005Dialect | NHibernate.Driver.SqlClientDriver | NHibernate.Dialect.MsSql2005Dialect |
If you are installing Enterprise Tester for the first time and using an Oracle Database we strongly suggest using the Managed Oracle Driver - as this will provide a much easier installation experience.
When using the managed driver you:
- Do not need to install ODAC or any Oracle client packages on your ET server.
- Do not need to add additional configuration sections to your web.config file.
- Need less disk splace (Installing ODAC requires an additional 200mb or more of disk space for installation).
- Can configure the application pool to either 32bit of 64bit without having to change the version of ODAC installed (such as if you wish to support importing .EAP files from Enterprise Architect, which requires the application pool be configured to support 32bit applications.
Oracle Managed Driver
When using the Oracle managed driver, you will also need to configure the following in the appsettings section of your web.config file:
<appsettings>
<add key="nhibernate.driver.oracle.enable-multiquery" value="true" />
...
<\appsettings>
Example Connection Strings
Each database also uses a slightly different connection string format - the http://connectionstrings.com/ website provides useful details of each connection string format.
Database Product | Example Connection String |
---|---|
Oracle | UserID=SYSTEM;Password=password;Data Source=192.168.1.232:1521/orcl |
PostgreSQL | Host=192.168.1.232;Port=5432;Database=etest;UserId=postgres;Password=Password123;Timeout=60;CommandTimeout=120; |
SQL Server Express (user-attached database) | DataSource=.\SQLExpress;AttachDbFilename=C:\ProgramFiles(x86)\CatchLimited\EnterpriseTests\Data\EnterpriseTester.mdf;InitialCatalog=EnterpriseTester;Trusted_Connection=Yes; |
SQL Server (Integrated Security) | DataSource=.\SQLExpress;Initial Catalog=EnterpriseTester;IntegratedSecurity=True; |
SQL Server (SQL username/password) | DataSource=dbserver;Initial Catalog=EnterpriseTester;UserId=etuser;Password=etpass; |
Configuring a PostgreSQL Database
Before beginning, make sure you have a version of PostgreSQL that supports a column type of "uuid" (normally version 8.3 and later) as this is required by Enterprise Tester.
Oracle Database Configuration Notes when using Windows Server 2008r2
This instructions only apply when using the unmanaged Oracle driver, we strongly recommend for new customers that they instead use the managed oracle driver, which does not require installation of additional software (ODAC) on their ET server.
Enterprise Tester no longer ships with Oracle drivers. To use Enterprise Tester with an Oracle database you must download and install the Oracle ODP.Net drivers from the Oracle website (part of ODAC). You can install either 32bit: http://www.oracle.com/technetwork/database/windows/downloads/index-101290.html or 64bit: http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html.
We suggest using the XCopy deployment release. Once the XCopy release is downloaded, you can unzip the xcopy file into a folder, then run the following command: install.bat odp.net2 c:\oracle odac
Which will install the ODP.Net drivers into the GAC (Global Assembly Cache) see the readme.txt in the root of the ODAC xcopy zip file for further details. At this point you will be able to configure Enterprise Tester to connect to an Oracle database.
Because Oracle Drivers are specific to 32bit and 64bit operating systems - you need to ensure that Enterprise Tester's application pool is configured with an identical setting.
To confirm this:
- Go to Control Panel -> Administrative Tools -> Internet Information Services (IIS) Manager.
- On the left hand side select Application Pools.
- Click on the Application Pool being used by Enterprise Tester (this will normally be "DefaultAppPool" or "EnterpriseTester").
- Select on the right-hand side "Actions" panel "Advanced Settings...".
If you have installed the 32bit Oracle drivers, you must have "Enable 32-Bit Applications" set to True on the advanced settings screen of the application pool. If you have installed the 64bit Oracle drivers, you must have "Enabled 32-Bit Applications" set to False on the advanced settings screen of the application pool.