2016-04-02 8 views
0

Microsoft Expression EncoderでSeleniumテストの実行を記録しようとしています。私は現在直面している問題について多くの答えを見つけましたが、誰もそれを本当に解決しませんでした。だから、私はビデオ録画のプロセスを開始する方法があります。Microsoft Expression EncoderとSelenium + TeamCity

 scj = new ScreenCaptureJob(); 
     scj.OutputScreenCaptureFileName = logPath + "\\" + fileName + ".wmv"; 
     scj.ScreenCaptureVideoProfile.FrameRate = 25; 
     scj.CaptureMouseCursor = true; 
     scj.Start(); 

Visual Studio 2015から実行すると、正常に動作します。私はいくつかのフォーラムを超える読んだ、これは私のアーキテクチャの選択に関連しているため、今

OneTimeSetUp: System.BadImageFormatException: Could not load file or assembly 
'Microsoft.Expression.Encoder, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 
or one of its dependencies. An attempt was made to load a program with an incorrect format 

:私は、私たちのビルド剤の一つでチームシティーからそれを実行したときしかし、私は次のメッセージが表示されます。 TeamCityでは、コードをコンパイルするビルドステップで「Any CPU」プラットフォームが選択され、Visual Studioでは「Mixed Platforms」が選択されます。

TeamCityでx86アーキテクチャにすべてを設定しようとしましたが、NUnit 3を32ビットプロセスとして実行し、プロジェクトのターゲットアーカイブを変更するように強制しました。これらのソリューションのどれも働いていません。他に何ができるのか誰にも分かりますか?

答えて

0

対応するNuGetパッケージからMicrosoft.Expression.Encoderをインストールした可能性があります。

また、あなたのパッケージをソース管理のままにしておくことは大変です。

そのため、TCがコードをチェックアウトするときに、NuGetインストーラを使用してビルドステップが必要なノードパッケージが見つからない場合、TCがコードをビルドしようとする前にパッケージを復元します。

Teamcity NuGet Installer

+0

いいえ、実際に私はこの[サイト](https://www.microsoft.com/en-us/download/details.aspx?id=18974)からそれをインストールした後、私は手動で追加C:¥Program Files(x86)¥Microsoft Expression¥Encoder 4¥SDKフォルダにあるプロジェクトのライブラリを使用できます。 答えを読んだ後、NuGetを試しましたが、同じ問題があります。 –

+0

次に、自分のソリューションファイルyourSolution.slnとyourProject.projがチェックされているかどうかを調べるようにします。主にプロジェクトファイルにはdllへの参照が含まれているので、dll自体をチェックインする必要があります。私たちはいくつかのDevExpressライブラリ –

+0

をチェックしました。私はそれがlibrayのアーキテクチャーなので、私はTeamCityのコマンドラインでそれらを "整列"させることができないと思う。 –

関連する問題