(Java)FitNesseとSQL Serverの両方を初めて使用します。基本的なSQLテストを、DbFitで動作させたいと考えています。
私はルートに次のものを持っています:
!path c:\fitnesse\lib\dbfit.jar
!path c:\fitnesse\lib\fitlibrary.jar
!path c:\fitnesse\lib\sqljdbc4.jar
|Import|
|dbfit.SqlServerTest|
HelloWorldTestには次のものがあります。
!contents -R2 -g -p -f -h
!|dbfit.SqlServerTest|
|Connect|LOCALSQLEXPRESS|sa|Password|somePassword:|
|eg.Division|
|numerator|denominator|quotient?|
|10 |2 |5 |
|12.6 |3 |4.2 |
|100 |4 |33 |
私が試したこと:
- SQLExpressのユーザー名とパスワードを再確認しましたが、SqlServerインスタンスはローカルホストにあります。これがファイアウォールの問題ではないかと思います。(ファイアウォールについての私の理解は確かに非常に弱いです。)
- SQL Server Configuration Manager(SSCM)を見ると、
- 「SQLServer(SQLEXPRESS)はID2316のプロセスとして実行されています。
- PowerShellコマンド「nestat-a-no| Select-String 2316」を使用すると、ポート55618でプロセスが実行されていることがわかります。
- SSCMでは、JDBCが何を使用しているかわからないため、「SQL Native Client 11.0構成(32ビット)」と「SQLNativeClient11.0構成」の両方で「LOCALSQLEXPRESS」というエイリアスを作成します。(どうやら、JDBC for SQL Serverは名前付きインスタンスをサポートしていないので、\ localhost \ SQLEXPRESSに直接接続しようとしたときに例外が発生しました)「プロトコル」で「TCP/IP」と「共有メモリ」も有効にしましたSQLEXPRESSの場合」。
テストを実行すると、次のエラーが発生します。
com.microsoft.sqlserver.jdbc.SQLServerException:ホストLOCALSQLEXPRESS、ポート1433へのTCP/IP接続が失敗しました。エラー:「null。接続プロパティを確認してください。SQLServerのインスタンスがホストで実行されており、ポートでTCP/IP接続を受け入れていることを確認してください。ポートへのTCP接続がファイアウォールによってブロックされていないことを確認してください。」
(私のエイリアスがポート55618を指しているにもかかわらず、ポート番号1433に注意してください。)
これはStackOverflowでの私の最初の投稿です、愚かなことを許してください。誰かが光を当てることができますか?