スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


--------------------------------------------------------------------------------------

「Salesforce認定Platformデベロッパー」を受験してきました

試験案内
https://www.salesforce.com/jp/services-training/education-services/cert/credentials.jsp
受験ガイド
https://secure2.sfdcstatic.com/jp/assets/pdf/misc/studyguide_cert_pla_dev1.pdf


結果からいうと、無事合格できました。

これから、この試験を勉強するっていう方のため?に私のメモを下記に残しておきます。
試験範囲はStudy ガイドを参考にしてください。

一部、参考URLがかぶっています。
なお、私が受験したときはWinter '17です。
--------------------------------------------

1.SALESFORCEの基本(10%)


★参考URL

・Apexガバナ制限
https://developer.salesforce.com/docs/atlas.ja-jp.salesforce_app_limits_cheatsheet.meta/salesforce_app_limits_cheatsheet/salesforce_app_limits_platform_apexgov.htm

Apex はマルチテナント環境で実行するため、Apex ランタイムエンジンは、回避 Apex コードまたはプロセスが共有リソースを独占しないよう制限事項を強制します。


・Apexのバージョン設定の管理
https://help.salesforce.com/articleView?id=code_version_settings_apex.htm&language=ja&type=0

下位互換性を持たせるため、クラスは、Apex および API の特定のバージョンのバージョン設定と共に保存されます。
Apex、API、および管理パッケージのコンポーネントが次のリリースバージョンにアップグレードされた場合でも、クラスまたはトリガは特定の、既知の動作のバージョンにバインドされたままになります。


・パッケージについて
https://help.salesforce.com/articleView?id=sharing_apps.htm&language=ja&type=0

未管理パッケージは、通常、開発者にアプリケーションの基本ビルディングブロックを提供するために、オープンソースプロジェクトまたはアプリケーションテンプレートを配布する場合に使用します。未管理パッケージからコンポーネントがインストールされると、コンポーネントはインストールされた組織で編集できるようになります。未管理パッケージを作成してアップロードした開発者は、インストールされたコンポーネントを制御できず、これらのコンポーネントを変更またはアップグレードできません

管理パッケージは通常、アプリケーションをカスタマーに配布、販売するために Salesforce パートナーが使用します。これらのパッケージは、Developer Edition 組織で作成される必要があります

管理パッケージには次のような利点もあります。
Apex の知的財産の保護
・API アクセスが可能なコンポーネントの組み込みのバージョン管理サポート
・前のバージョンを分岐およびパッチする機能
・登録者へのパッチ更新のシームレスな転送を行う機能
・インストールで競合が発生しないようにすべてのコンポーネントに一意の名前を指定

・Visualforce の概要
https://developer.salesforce.com/page/JP:An_Introduction_to_Visualforce

MVCモデルについての説明箇所


・積み上げ集計項目
https://help.salesforce.com/articleView?id=fields_about_roll_up_summary_fields.htm&language=ja&type=0

次の場所で積み上げ集計項目を作成します。
・主従関係の主側にあるカスタムオブジェクト
・カスタムオブジェクトとの主従関係の主側にあるすべての標準オブジェクト
・関連する商談商品の値を使用する商談
・関連する商談の値を使用する取引先
・キャンペーンメンバーの状況またはキャンペーンメンバーのカスタム項目の値を使用するキャンペーン


積み上げ集計項目で計算できる項目の種類は、計算の種類によって異なります。
・積み上げの種類として [合計] を選択した場合は、数値、通貨、およびパーセント項目が使用できます。
・積み上げの種類として [最小] または [最大] を選択した場合は、数値、通貨、パーセント、日付、および日付/時間項目が使用できます。


・単体テストの組織データとテストデータの分離
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_data_access.htm

Apex コードより、テストメソッドはデフォルトで、標準オブジェクト、カスタムオブジェクト、およびカスタム設定データなどの組織の既存のデータにアクセスできません。アクセスできるのは、テストメソッドが作成したデータのみです。ただし、組織またはメタデータオブジェクトの管理に使用する次のようなオブジェクトなどは、そのままテストでアクセスできます。
・User
・Profile
・Organization
・AsyncApexJob
・CronTrigger
・RecordType
・ApexClass
・ApexTrigger
・ApexComponent
・ApexPage

可能な場合は常に、テストごとにテストデータを作成する必要があります。この制限は、IsTest(SeeAllData=true) アノテーションで、テストクラスまたはテストメソッドにアノテーションを付加することによって無効にできます。


・IsTest アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_isTest.htm

SeeAllData=trueの使い方について


・カスタムオブジェクトの活動の有効化に関するメモ
https://help.salesforce.com/articleView?id=tracking_activities_for_custom_objects.htm&language=ja&type=0

カスタムオブジェクトを作成するときに活動を有効化すると、自動的に [活動] 関連リストがデフォルトのページレイアウトに追加されます。


・クロスオブジェクト数式項目とは?
https://help.salesforce.com/articleView?id=customize_cross_object.htm&language=ja&type=0

クロスオブジェクト数式項目とは、2 つの関連オブジェクトにまたがり、そのオブジェクトで差し込み項目を参照する数式です。
最大 10 リレーション離れたオブジェクトの項目を参照できます。
別のオブジェクトの項目を参照する数式を作成し、ページレイアウトにその数式を表示する場合、ユーザは、そのオブジェクトレコードへのアクセス権がなくても、オブジェクトでその項目を表示できます


・入力規則
https://help.salesforce.com/articleView?id=fields_about_field_validation.htm&type=0&language=ja&release=206.12

入力規則を使用して、データの質を向上させます。


・ワークフロー
アウトバウンドメッセージアクション
https://help.salesforce.com/articleView?id=workflow_managing_outbound_messages.htm&type=0&language=ja&release=206.12

アウトバウンドメッセージでは、外部サービスなどの指定エンドポイントに情報を送信します。
※プロセスビルダーでは、アウトバウンドメッセージを使用することができないことを抑えておく。


★Trailhead

Salesforce プラットフォームの基礎
https://trailhead.salesforce.com/ja/trails/force_com_admin_beginner/modules/starting_force_com

Visualforceの基礎
https://trailhead.salesforce.com/ja/trails/force_com_dev_beginner/modules/visualforce_fundamentals

データモデリング
https://trailhead.salesforce.com/ja/modules/data_modeling

Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

プロセスの自動化
https://trailhead.salesforce.com/ja/modules/business_process_automation


--------------------------------------------

データモデリング及び管理(12%)


★参考URL

・オブジェクトリレーションの概要
https://help.salesforce.com/articleView?id=overview_of_custom_object_relationships.htm&language=ja&type=0

主従関係
従レコードを削除すると、従レコードはごみ箱に移動しますが、主レコードはそのまま残ります。主レコードを削除すると、関連する従レコードおよび副従レコードも削除されます
デフォルトでは、主従関係でレコードの親を変更することはできません。ただし、システム管理者は、主従関係定義の [親の変更を許可] オプションを選択して、カスタムオブジェクトで主従関係にある子レコードの親を別の親レコードに変更できます。
従レコードおよび副従レコードの [所有者] 項目は使用できません。この項目は、自動的に主レコードの所有者に設定されます。主従関係の従側にあるカスタムオブジェクトでは、共有ルール、共有の直接設定、またはキューを使用できません。これは、共有ルール、共有の直接設定、またはキューには [所有者] 項目が必要なためです。
従レコードおよび副従レコードは、主レコードからセキュリティ設定と権限を継承します。従レコードに独自に権限を設定することはできません。

参照関係
参照項目が省略可能である場合、参照レコードが削除されたときに発生する動作を次の 3 つの中から 1 つ指定できます。
[この項目の値をクリアします]
[参照関係に含まれる参照レコードは削除できません]
[このレコードも削除します]



・積み上げ集計項目
https://help.salesforce.com/articleView?id=fields_about_roll_up_summary_fields.htm&language=ja&type=0

・多対多リレーションの作成
https://help.salesforce.com/articleView?id=relationships_manytomany.htm&type=0&language=ja&release=206.12

連結オブジェクト
2 つの主従関係を持つカスタムオブジェクトです。カスタム連結オブジェクトを使用して、2 つのオブジェクト間の「多対多」リレーションをモデル化できます


・クロスオブジェクト数式項目とは?
https://help.salesforce.com/articleView?id=customize_cross_object.htm&language=ja&type=0

・カスタム項目のデータ型
https://help.salesforce.com/articleView?id=custom_field_types.htm&language=ja&type=0

・プリミティブデータ型
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_primitives.htm

すべての Apex 変数は、クラスのメンバー変数であるかメソッド変数であるかに関係なく、null に初期化されます。


・項目の削除
https://help.salesforce.com/articleView?id=deleting_fields.htm&language=ja&type=0

カスタム項目を削除する前に、参照されている場所を考慮してください。他の場所で参照されているカスタム項目は削除できません。たとえば、項目自動更新や Apex によって参照されているカスタム項目は削除できません。


・データローダガイド
https://developer.salesforce.com/docs/atlas.ja-jp.dataLoader.meta/dataLoader/data_loader.htm
※データローダを使用したデータの挿入、更新、または削除
https://developer.salesforce.com/docs/atlas.ja-jp.dataLoader.meta/dataLoader/inserting_updating_or_deleting_data.htm

外部IDが使えるのはupsertだけ。


★Trailhead

データモデリング
https://trailhead.salesforce.com/ja/modules/data_modeling

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

Apex の基礎とデータベース
https://trailhead.salesforce.com/ja/modules/apex_database

アプリケーションのカスタマイズ
https://trailhead.salesforce.com/ja/modules/lex_implementation_customization

Lightning Experience のデータ管理
https://trailhead.salesforce.com/ja/modules/lex_implementation_data_management

データの管理
https://trailhead.salesforce.com/ja/modules/data_management


--------------------------------------------

ロジックとプロセスの自動化(46%)


★参考URL

・数式の演算子と関数
https://help.salesforce.com/articleView?id=customize_functions.htm&type=0&language=ja&release=206.12

PRIORVALUE
NOW
REGEX
IMAGE
HYPERLINK
その他、よく使う数式は抑えておく。


・入力規則
https://help.salesforce.com/articleView?id=fields_about_field_validation.htm&type=0&language=ja&release=206.12

・ワークフロー
https://help.salesforce.com/articleView?id=customize_wf.htm&type=0&language=ja&release=206.12

・承認
https://help.salesforce.com/articleView?id=what_are_approvals.htm&type=0&language=ja&release=206.12
https://help.salesforce.com/articleView?id=approvals_create_recordeditability.htm&type=0&language=ja&release=206.12

レコードは承認申請されるとロックされ、承認プロセス中にユーザがそのレコードを編集するのを防ぎます。編集権限のプロパティを使用して、この承認プロセスでロックされているレコードの編集者を決定します。
管理者のみ...
管理者または...




・Lightning プロセスビルダー
https://help.salesforce.com/articleView?id=process_overview.htm&type=0&language=ja&release=206.12

ワークフローと同じアクションを実行するには、より強力で柔軟になったプロセスビルダーを使用します。プロセスビルダーでは、次のことができます。
・レコードを作成する。
・レコードとその親のみでなく、あらゆる関連レコードを更新する。

・クイックアクションを使用して、レコードの作成、レコードの更新、または活動の記録を行う。
・プロセスを別のプロセスから呼び出す。
・フローを起動する。このアクションはワークフローでスケジュールできません。
・メールを送信する。
・Chatter に投稿する。
・承認申請する。



・使用する自動化ツール
https://help.salesforce.com/articleView?id=process_which_tool.htm&type=0&language=ja

・アクセス修飾子
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_access_modifiers.htm

・Apex クラス定義
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_defining.htm

・Apex クラスと Java クラスの違い
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_java_diffs.htm

内部クラスとインターフェースは、外部クラスの 1 つ下のレベルでのみ宣言できます。
デフォルトのアクセス修飾子は private です。
例外クラス名の末尾には、exception をつける必要があります。
例外クラスは 4 つの暗黙的なコンストラクタが組み込まれていますが、追加することもできます。




・For ループ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_loops_for.htm

・変数
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_variables.htm

変数は、宣言した後に値で初期化しないと null になります
変数はブロック内のどの場所でも定義でき、その地点から適用されます。サブブロックは、すでに親ブロックで使用されている変数名を再定義できませんが、並行ブロックでは変数名を再利用できます



・sObject 型
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SObjects.htm

・Exception クラスおよび組み込み例外
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_exception_methods.htm

DmlException
LimitException・・・ガバナ制限を超えました。この例外は、キャッチできません。
ListException
NullPointerException
QueryException



・組み込み例外および共通メソッド
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_exception_builtin.htm

・カスタム例外の作成
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_exception_custom.htm

カスタム例外クラスを作成するには、組み込み Exception クラスを拡張して、「MyException」や「PurchaseException」のようにクラス名の最後が Exception で終わるように指定します


・SOQL および SOSL クエリ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL.htm

SOQL ステートメントは、sObjects のリスト単一 sObject、または count メソッドクエリの Integer を評価します。
SOSLの戻り値は List>



・SOQL および SOSL クエリ結果の処理
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL_working_with_results.htm


・SOQL 集計関数の使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_SOQL_agg_fns.htm

・リレーションクエリ制限について
https://developer.salesforce.com/docs/atlas.ja-jp.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_relationships_query_limits.htm

各指定リレーション内で、親-子リレーションの 1 つのレベルだけが 1 つのクエリ内で指定可能です。たとえば、FROM 句が Account を指定している場合、SELECT 句では Contact かそのレベルの他のオブジェクトのみを指定できます。Contact の子オブジェクトを指定することはできません。


・DML ステートメントと Database クラスメソッド
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_dml_database.htm

・Apex DML 操作
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dml_section.htm

・一括 DML 例外処理
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dml_bulk_exceptions.htm

Database DML メソッドの allOrNone パラメータが true に指定されている場合とfalseに指定されている場合の違い



・トランザクションの制御
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/langCon_apex_transaction_control.htm

設定した各セーブポイントは、DML ステートメントのガバナ制限にカウントされます。
各ロールバックは、DML ステートメントのガバナ制限にカウントされます


・実行ガバナと制限
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_gov_limits.htm

発行される SOQL クエリの合計数:100
SOQL クエリによって取得されるレコードの合計数:50000
発行される DML ステートメントの合計数:150
DML ステートメントのレコード数:10000



・ガバナ実行制限内での Apex の実行
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_limits_tips.htm

個々の sObject ではなく、sObject のリストに対して DML コールを行うと、DML ステートメント制限に達する可能性が低くなります

SOQL クエリを for ループブロック内に置くと、SOQL クエリが反復ごとに実行されて、100 回というトランザクションあたりの SOQL クエリ数制限を超える可能性があるため、よい方法とはいえません。


・Limits クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_limits.htm

Limits メソッドは、メソッドのコール数やヒープサイズの残りの量など、特定のガバナの具体的な制限を返します。
getDMLRows()
getLimitDMLRows()
getDMLStatements()
getLimitDMLStatements()
getQueries()
getLimitQueries()
getQueryRows()
getLimitQueryRows()



・トリガ
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers.htm

・トリガ構文
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_syntax.htm

・トリガコンテキスト変数
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_context_variables.htm

new、newMapの使い方。


・トリガと実行の順序
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_order_of_execution.htm

順番を覚える。
特に、18:データベースコミット後に19:メール送信など、確定後のロジックが実行


・共有の理解
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_bulk_sharing_understanding.htm

with sharing キーワードで定義されていないクラスを介して開始されたトリガは、システムモードで実行されます。この場合、トリガは実行ユーザに特定のアクセス権を要求しません。


・Apex を使用したレコードの共有
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_bulk_sharing_creating_with_apex.htm

すべてのカスタムオブジェクトの共有オブジェクトには次のように名前が付けられています。MyCustomObject はカスタムオブジェクトの名前です。
MyCustomObject__Share


・with sharing または without sharing キーワードの使用
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_classes_keywords_sharing.htm

内部クラスはそのコンテナクラスから共有設定を継承しません。


・匿名ブロック
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_anonymous_block.htm

・DescribeSObjectResult クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_sobject_describe.htm

getRecordTypeInfos()
isCreateable()


・DescribeFieldResult クラス
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_methods_system_fields_describe.htm

getPicklistValues()


・Apex Describe Information について
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dynamic_describe_objects_understanding.htm

・項目トークンの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_dynamic_field_tokens.htm

・カスタム設定へのアクセス
https://help.salesforce.com/articleView?id=cs_accessing.htm&language=ja&type=0

{!$Setup.CustomSettingName__c.CustomFieldName__c}


・カスタムデータセットの作成
https://help.salesforce.com/articleView?id=cs_about.htm&language=ja&type=0

カスタム設定データはアプリケーションキャッシュで公開されます。これにより、データベースへのクエリを繰り返し行うコストをかけずに、効率的なアクセスを実現します。さらに、このデータは、数式項目、入力規則、フロー、Apex、SOAP API で使用できます。


・カスタム設定
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_customsettings.htm




★Trailhead

数式と入力規則
https://trailhead.salesforce.com/ja/modules/point_click_business_logic

プロセスの自動化
https://trailhead.salesforce.com/ja/modules/business_process_automation

データ品質
https://trailhead.salesforce.com/ja/modules/data_quality

Apex の基礎とデータベース
https://trailhead.salesforce.com/ja/modules/apex_database

クイックスタート: Apex
https://trailhead.salesforce.com/ja/projects/quickstart-apex

会議管理アプリケーションを構築する
https://trailhead.salesforce.com/ja/projects/salesforce_developer_workshop

データベースと .NET の基本
https://trailhead.salesforce.com/ja/modules/database_basics_dotnet

Apex トリガ
https://trailhead.salesforce.com/ja/modules/apex_triggers

データセキュリティ
https://trailhead.salesforce.com/ja/modules/data_security



--------------------------------------------

ユーザインタフェース(10%)


★参考URL


・PDF ファイルとしての Visualforce ページの表示
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_output_pdf_renderas.htm

<apex:page renderAs="pdf">


・Visualforceを使ってみよう
http://successjp.salesforce.com/blogs/2014/04/visualforce-ef12.html

・静的リソース
https://help.salesforce.com/articleView?id=pages_static_resources.htm&language=ja&type=0

静的リソースにより、アーカイブ (.zip や .jar ファイルなど)、画像、スタイルシート、JavaScript、その他のファイルなど、Visualforce ページ内で参照できるコンテンツをアップロードできます。
apex:image
apex:includeScript
apex:stylesheet


・Visualforce マークアップでの静的リソースの参照
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_resources_reference.htm

・標準コントローラ
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller_std.htm

・標準リストコントローラ
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller_sosc_about.htm

・カスタムコントローラおよびコントローラ拡張
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/pages_controller.htm

・PageReference クラス
https://developer.salesforce.com/docs/atlas.ja-jp.pages.meta/pages/apex_system_pagereference.htm

Page.existingPageName
PageReference pageRef = new PageReference('***partialURL***');
PageReference pageRef = new PageReference('***fullURL***')


・Lightning コンポーネントフレームワークとは
https://developer.salesforce.com/docs/atlas.ja-jp.lightning.meta/lightning/intro_framework.htm

Lightning コンポーネントフレームワーク
https://help.salesforce.com/articleView?id=aura_overview.htm&language=ja&type=0



★Trailhead


Visualforce の基礎
https://trailhead.salesforce.com/ja/modules/visualforce_fundamentals

クイックスタート: Visualforce
https://trailhead.salesforce.com/ja/projects/quickstart-visualforce

会議管理アプリケーションを構築する
https://trailhead.salesforce.com/ja/projects/salesforce_developer_workshop

Visualforce と Lightning Experience
https://trailhead.salesforce.com/ja/modules/lex_dev_visualforce

Visualforce Mobile
https://trailhead.salesforce.com/ja/modules/visualforce_mobile_salesforce1

クイックスタート: Lightning コンポーネント
https://trailhead.salesforce.com/ja/projects/quickstart-lightning-components

Lightning コンポーネントの基本
https://trailhead.salesforce.com/ja/modules/lex_dev_lc_basics

取引先の地理位置情報アプリケーションを作成する
https://trailhead.salesforce.com/ja/projects/account-geolocation-app

レストランの位置を示す Lightning コンポーネントを作成する。
https://trailhead.salesforce.com/ja/projects/workshop-lightning-restaurant-locator



--------------------------------------------

テスト(12%)


★参考URL


・Apex 単体テスト
https://help.salesforce.com/articleView?id=code_run_tests.htm&language=ja&type=0

Apex コードの少なくとも 75% が単体テストでカバーされており、かつすべてのテストが成功している。
すべてのトリガについて何らかのテストを行う。



・Apex のテスト
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing.htm

・isTest(SeeAllData=true) アノテーションの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_seealldata_using.htm

・System クラス
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_methods_system_system.htm

・Apexテストコード作成の落とし穴
http://blogjp.sforce.com/2011/07/apex-04b8.html

・TestVisible アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_testvisible.htm

TestVisible アノテーションを使用すると、テストクラス外にある別のクラスの非公開メンバーまたは保護メンバーにテストメソッドからアクセスできるようになります。


・IsTest アノテーション
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_classes_annotation_isTest.htm

・runAs メソッドの使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_tools_runas.htm

ユーザのレコード共有を強制実行するために、システムメソッド runAs を使用して、コンテキストユーザを既存のユーザまたは新規ユーザに変更するテストメソッドを作成できます。


・Limits、startTest、および stopTest の使用
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_tools_start_stop_test.htm

Limits メソッドのほかに、startTest メソッドと stopTest メソッドを使用して、コードがガバナ制限にどれくらい近づいているかを確認します。


・テストデータについて
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_data.htm

・Apex テストの実行
https://help.salesforce.com/articleView?id=code_test_execution.htm&language=ja&type=0

・開発者コンソールでのテストの実行
https://help.salesforce.com/articleView?id=code_dev_console_tab_tests.htm&language=ja&type=0

・単体テストメソッドの実行
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_testing_unit_tests_running.htm



★Trailhead


Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing



--------------------------------------------

デバッグとリリースツール(10%)


★参考URL

・匿名ブロック
https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_anonymous_block.htm

・Salesforce 開発ツール
https://help.salesforce.com/articleView?id=development_tools.htm&language=ja&release=206.7&type=0

・Sandbox の種別およびテンプレート
https://help.salesforce.com/articleView?id=create_test_instance.htm&language=ja&type=0

Developer Sandbox は、隔離された環境での開発とテストを目的
Developer Pro Sandbox は、隔離された環境での開発とテストを目的。より多くの開発および品質保証作業の処理や、インテグレーションテストまたはユーザトレーニングに使用
Partial Copy Sandbox は、テスト環境として使用されることを目的。ユーザ受け入れテスト、インテグレーションテスト、トレーニングなどの品質保証作業。Sandbox テンプレートで定義されている本番組織のデータのサンプルが含まれます
Full Sandbox は、テスト環境として使用されることを目的としています。パフォーマンステスト、負荷テスト、およびステージングをサポートするのは Full Sandbox のみ。Sandbox テンプレートを適用し、Sandbox にテストやその他のタスクに必要なレコードのみが含まれるようにすることをお勧めします。


・種類別 Sandbox ライセンスおよびストレージ
https://help.salesforce.com/articleView?id=data_sandbox_environments.htm&language=ja&type=0

表 2. Sandbox 機能のクイックリファレンス


・Sandbox の作成
https://help.salesforce.com/articleView?id=data_sandbox_create.htm&language=ja&type=0

・Salesforce の機能とエディションの制限
https://help.salesforce.com/articleView?id=limits_general.htm&language=ja&type=0

・Force.com Developer Edition組織について
https://developer.salesforce.com/page/JP:Developer_Edition

・デバッグログ
https://help.salesforce.com/articleView?id=code_debug_log.htm&language=ja&type=0

・デバッグログの設定
https://help.salesforce.com/articleView?id=code_add_users_debug_log.htm&language=ja&type=0

・デバッグログの詳細
https://help.salesforce.com/articleView?id=code_debug_log_details.htm&language=ja&type=0

・デバッグログレベル
https://help.salesforce.com/articleView?id=code_setting_debug_log_levels.htm&language=ja&type=0

レベルは、低いものから順に並べてあります
NONE
ERROR
WARN
INFO
DEBUG
FINE
FINER
FINEST


・Apex コードへのチェックポイントの設定
https://help.salesforce.com/articleView?id=code_dev_console_checkpoints_setting.htm&language=ja&type=0

・[Checkpoints (チェックポイント)] タブ
https://help.salesforce.com/articleView?id=code_dev_console_tab_checkpoints.htm&language=ja&type=0

リストの各チェックポイント
Namespace (名前空間)
Class (クラス)
Line (行)
Time (時間)


・開発者コンソールのログの操作
https://developer.salesforce.com/docs/atlas.ja-jp.198.0.apexcode.meta/apexcode/apex_debugging_system_log_console.htm

・デバッグログ
https://developer.salesforce.com/docs/atlas.ja-jp.206.0.apexcode.meta/apexcode/apex_debugging_debug_log.htm

・変更の作成ツールとリリースツールの選択
https://help.salesforce.com/articleView?id=code_tools_ant.htm&language=ja&type=0

・変更点のリリース
https://help.salesforce.com/articleView?id=deploy_overview.htm&language=ja&type=0

変更セット機能を使用するには、リリース接続


・Force.com 移行ツールを使用したリリース
https://help.salesforce.com/articleView?id=code_tools_ant_using.htm&language=ja&type=0

Apache の Ant 開発ツールを使用して Developer Edition または Sandbox を使用している組織から本番組織にメタデータの変更および Apex クラスをファイルベースでリリースする場合は、Force.com 移行ツールをダウンロードします。


・変更セットを使用したリリース
https://help.salesforce.com/articleView?id=code_tools_changesets.htm&type=0

・Force.com IDE を使用した作成およびリリース
https://help.salesforce.com/articleView?id=code_tools_forceIDE.htm&type=0

・変更セット
https://help.salesforce.com/articleView?id=changesets.htm&language=ja&type=0

変更セットを使用すると、Salesforce 組織間でカスタマイズを送信できます

★Trailhead


Apex テスト
https://trailhead.salesforce.com/ja/modules/apex_testing

アプリケーションライフサイクル管理
https://trailhead.salesforce.com/ja/modules/alm_deployment

変更管理
https://trailhead.salesforce.com/ja/modules/app_deployment

Apex と .NET の基本
https://trailhead.salesforce.com/ja/modules/apex_basics_dotnet


--------------------------------------------

以上が、2017/04現在、help、trailheadで参考になりそうなところです。
テキストエディタやExcelなどにコピペすれば勝手にハイパーリンクができると思います。
赤字はここがポイントかな?と思ったところですが、私の勝手な判断なので責任持ちません。

ほかに、ポイントスタディの講座を聴きに行ったり、適当に検索すれば他にも試験対策を書いている方々がいるので、そういったものを参考にするとよいかと思います
スポンサーサイト


--------------------------------------------------------------------------------------

スーパー詰将棋1000。入門82問目

Super Tsumeshogi 1000 (J)_081

1 ▲2五飛
2 △同 桂
3 ▲3三桂打

--------------------------------------------------------------------------------------

このブログについて
  • 全記事一覧(時間順)
  • このブログについて
  • 私のプロフィール
  • 当ブログで扱っている動画について
  • 記事違いなコメントのお返事

  • カテゴリー
    twitter
    カレンダー
    03 | 2017/04 | 05
    - - - - - - 1
    2 3 4 5 6 7 8
    9 10 11 12 13 14 15
    16 17 18 19 20 21 22
    23 24 25 26 27 28 29
    30 - - - - - -
    Amazon
    でたらめな当ブログにぴったりな商品を自動で表示するみたいです。



    月別アーカイブ
    プロフィール

    たづみ

    Author:たづみ
    ・1981年生まれの男
    ・もう少し詳細なプロフィールはこちらで

    最新コメント
    アクセスランキング
    [ジャンルランキング]
    日記
    1032位
    アクセスランキングを見る>>

    [サブジャンルランキング]
    会社員・OL
    212位
    アクセスランキングを見る>>


    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。