1

現在、多くの apex クラス、トリガー、および Visualforce ページを含む Salesforce.com カスタム APEX プロジェクトに取り組んでいます。システムの一部である AppExchange からの多数のアプリケーションもあります。

すべての Apex クラス、Visualforce ページなどをテスト環境で開発し、Eclipse IDE を使用してライブ環境にデプロイします。ライブ環境に変更をデプロイするたびに、すべてのクラス (AppExchange アプリからのものを含む) のすべてのテスト メソッドが実行されているように見えます。そのため、単純な変更のデプロイには数分かかる場合があります。

名前空間などでクラスを「パッケージ化」する方法が頂点にあるので、変更をデプロイしようとすると、そのパッケージに関連するテストメソッドのみが実行されます。そのようなものが存在する場合、私たちの展開ははるかに迅速に行われる可能性があります。

4

4 に答える 4

2

残念ながらいいえ、apex コードのデプロイ、すべての変更の部分的なテストはありません。これは、完全なテスト実行をトリガーするわずかなまたは自己完結型であっても関係ありません。これにより、特にコード メトリクスが適用されます (たとえば、最小合計コード カバレッジ)。

私見ですが、コードの信頼性を強化することに関しては、これは両面コインであることが証明されています。apex の使用を開始したとき、すべてのテストは非常に包括的で、多くのアサートとチェックを使用してコードの実際のテストを実行していました。その後、デプロイ時間が非常に長くなり始めたので、今ではテストが唯一の機能を提供し、最小限のコード カバレッジを満たしています。単純化したとしても、何かをデプロイするのにほぼ 3 分かかり、apex コード許容量の 20% しか使用しません。IMHO2、Apex はコーディング プラットフォームとしては遅すぎて、この種のテストを実施できません。許容値が 50% に達した場合、テストがどれくらいの期間実行されるか想像もつきません。

于 2011-04-19T19:51:30.173 に答える
2

これは可能ですが、Apache Ant について学び、Force.com Migration Toolkit を確認する必要があります。その後、ビルド ファイルを使用して、デプロイするファイルと実行するテストを決定できます。

私はこれと他の関連する開発戦略に触れるホワイトペーパーを書くのに忙しいです...それが終わったらブログに投稿します.

于 2011-04-25T14:37:19.207 に答える
1

apache ant 移行ツールを使用する場合、テスト クラスをスキップする deployCodeFailingTest のような展開のための多くのオプションがあります。特定のテスト クラスのみを実行する場合は、以下を使用してください: ur build.xml でこれに似たもの

<target name="deployCode">
`<sf:deploy`
username="${sf.username}"
password="${sf.password}"
serverurl="${sf.serverurl}"
deployroot="codepkg">
<runTest>SampleDeployClass</runTest>
</sf:deploy>
</target>

詳細なリファレンスについては、このリンクを使用してください http://www.salesforce.com/us/developer/docs/daas/salesforce_migration_guide.pdf

于 2011-10-28T05:02:34.857 に答える
0

次のアプローチをお勧めします。

  1. すべての SF コードのリポジトリとしての Git
  2. コードを CI/CD としてデプロイする jenkins
  3. 静的コード アナライザーとしての PMD
  4. 展開用のジェンキンスでの展開方法として sfdx。

Trailhead のリンクを参照してください: https://trailhead.salesforce.com/users/strailhead/trailmixes/architect-dev-lifecycle-and-deployment

于 2019-12-12T11:37:14.510 に答える