Developer Certification
Digital Developer Certification Quiz
Test your skills and knowledge in digital development with our comprehensive certification quiz designed for aspiring and experienced developers alike. This quiz encompasses a range of topics essential for success in the field, ensuring you are well-prepared for real-world challenges.
Key features of the quiz:
- 50 detailed questions covering various topics
- Assess your understanding of best practices
- Improve and validate your knowledge in digital development
A Digital Developer has been given a specification to integrate with a REST API for retrieving weather conditions. The service expects parameters to be form encoded.
Which service type should the Developer register?
FTP
SOAP
HTTP Form
WebDAV
What happens if the log file size limit is reached in custom logging?
Logging is suspended for the day.
Logging is suspended for two hours.
The log file is deleted and recreated from scratch.
The log file rolls over and the last used log is overwritten.
Which line of code creates a content slot that can be included on homepage.isml to display on the home page?
<isslot id="my_banner" description="for home page" type="global" context="content" context-object="${pdict.contentsearchresult.content}"/>
<isslot id="my_banner" description="for home page" type="global" context="homepage"/>
<isslot id="my_banner" description="for home page" context="global"/>
<isslot id="my_banner" description="for home page" context="global" context-object="${pdict.currenthomepage}"/>
A Digital Developer selects "Show Orderable Products Only" in the Search > Search Preferences Business Manager module.
Which business goal does this accomplish?
Exclude products from search results if Available to Sell (ATS) = 0.
Exclude back-ordered products from showing on the website.
Block displaying the product detail page if Available to Sell (ATS) = 0.
Exclude pre-order products from search results.
Universal Containers created a Site Export file from staging in the global export directory.
How should the Digital Developer update their sandbox using this staging site export file?
Perform a data replication from staging.
Use the Site Development > Site Import & Export Business Manager module.
Download the Site Export file and use UX Studio to transfer the data to the sandbox.
Use the Site Development > Import & Export Business Manager module.
A Digital Developer added a file named MyBusinessController.js in the cartridge named app_project. The project design calls for this new file to override MyBusinessController.js in client_project.
The client_project cartridge contains other necessary fun ctionality. Additional fun ctionality is also included in the storefront_core and storefront_controllers cartridges.
Which cartridge path meets the project requirements?
client_project:app_project:storefront_controllers:storefront_core
app_project:storefront_controllers:storefront_core
app_project:client_project:storefront_controllers:storefront_core
storefront_core:storefront_controllers:client_project:app_project
A Digital Developer has detected storefront pages being rendered with an error message. After inspecting the log files, the Developer discovered that an enforced quota is being exceeded.
What action should the Developer take to stop the quota violation?
Rewrite the code that is causing the overage.
Change the Business Manager configuration for the quota settings.
Take no action, the overage will be resolved when concurrent visitors are reduced.
Ask support to remove the quota limit.
Universal Containers wants to add a model field to each product. Products will have locale-specific model values.
How should the Digital Developer implement the requirement?
Utilize resource bundles for translatable values.
Set the model field as a localizable attribute.
Store translated model values in different fields; one field for each locale.
Add model to a new custom object with localizable attributes.
A Digital Developer must resolve a performance issue with product tiles. The Developer determines that the product tiles are NOT being cached for a long enough period.
Which two methods can the Developer use to verify the cache settings for the product tiles? (Choose two.)
Enable cache information in the storefront toolkit and view the cache information for the product tile.
View the cache information provided by the Merchant Tools > Technical Reports Business Manager module.
View the product list page cache settings provided in the Administration > Manage Sites Business Manager module.
Enable the template debugger to verify the cache times for the producttile.isml template.
A Digital Developer is working on a multi-site realm. A new site requires a different layout for the account landing page. The business logic and data model remain the same. The existing code is in AccountControl.js and accountlanding.isml in the app_storefront cartridge. The app_storefront cartridge contains code for all other business fun ctions. The cartridge path for the new site is currently int_cybersource:int_paypal:app_storefront.
The Developer creates a new cartridge named app_newsite that contains only the accountlanding.isml template for the new site.
Which modification should be made to the new cartridge path?
Set the cartridge path so that app_newsite is before app_storefront.
Set the cartridge path so that app_storefront is before int_cybersource.
Set the cartridge path to include only app_newsite.
Set the cartridge path so that app_newsite is after app_storefront.
A Digital Developer creates a B2C Commerce server connection in their UX Studio workspace. The Developer adds new cartridges to the workspace, but the cartridges do NOT execute as the Developer expects.
Which three things should the Digital Developer verify to ensure the cartridges are uploaded? (Choose three.)
The Auto-Upload setting is enabled for the server connection.
The Active Server setting is enabled for the server connection.
The credentials for the server connection are correctly entered.
The cartridge is for the current version of B2C Commerce.
The server is configured to accept incoming connections.
Universal Containers specifies a new category hierarchy for navigating the digital commerce storefront. A Digital Developer uses Business Manager to manually create a catalog with the specified category hierarchy, then uses the Products & Catalogs > Import & Export module to export the catalog as a file.
How can other Developers with sandboxes on the same realm create the same catalog in their own sandboxes?
Use Business Manager to upload and import a copy of the export file obtained from the original Developer.
Use the remote upload capability of the Site Import & Export module of Business Manager.
Use the import capability of the Site Import & Export module of Business Manager.
Use the Business Manager Data Replication module to replicate the catalog from the original Developer’s sandbox.
The following code ensures that an address ID CANNOT be used if it is already in use by another address in the customer's address book. There is a problem with the code. The error message for an invalid address ID is never shown to the user on the form field.
if (address.ID !== addressForm.addressid.value) {
for (var I = 0; I <addressBook.addresses.length; i++) {
if (addressBook.addresses[i].ID === addressForm.addressid.value) {
addressForm.invalidateFormElement();
throw new Error('Address name already exists');
}
}
}
How should the Digital Developer resolve this issue so that the error message is displayed on the address ID form field?
addressForm.invalidateFormElement("addressid");
addressForm.addresssid.invalidateFormElement = true;
addressForm.invalidateFormElement(addressForm.addressid);
addressForm.addresssid.invalidateFormElement();
Given the file structure below, which ISML method call renders the customLandingPage template?
ISML.renderTamplate('cartridge/templates/default/content/custom/customLandingPage');
ISML('content/custom/customLandingPage');
ISML.render('content/custom/customLandingPage');
ISML.renderTemplate('content/custom/customLandingPage');
A business user wants to add a link to a content page from within the body of another content asset. The target content asset ID is: terms-and-conditions.
Which link fun ction generates the correct link?
$include('Page-Include', 'cid', 'terms-and-conditions')$
$http('Content-Page', 'cid', 'terms-and-conditions')$
$httpUrl('Content-Show', 'cid', 'terms-and-conditions')$
$url('Page-Show', 'cid', 'terms-and-conditions')$
Why should a Digital Developer use ProductSearchModel.getProducts() instead of Category.getOnlineProducts() to access products?
It is more readable code.
It has fewer lines of code.
It uses the search index.
It reduces accesses to the application server.
A Digital Developer is adding support for an additional language other than the default. The locale code for the new language is de.
In which folder should the developer place resource bundles?
templates/de
templates/default
templates/resources
templates/default/resources
Assume the code below is executing:
var log = Logger.getLogger("xyz", "export");
log.info("This is important information");
Business Manager has the configuration:
- Active Log category is "root" with log level of "info".
Given this information, what is the beginning of the filename in which the log will be written?
Xyz
Custominfo-blade
Custom-export
Custom-xyz
A Digital Developer wants pass control to an ISML template from a JavaScript Controller and load product on the pipeline dictionary with the name myProduct.
Which code sample will achieve this?
ISML.renderTemplate("helloworld.isml", { "myProduct": "product" });
ISML.renderTemplate("helloworld.isml", { "product": myProduct });
ISML.renderTemplate("helloworld.isml", { product: myProduct });
ISML.renderTemplate("helloworld.isml", { myProduct: product });
A Digital Developer has identified that the code segment below is causing performance problems.
var productSearchHits : Iterator = pdict.SearchResult.getProducts();
var productSearchHits : Iterator = pdict.SearchResult.getProducts();
var foundProduct : dw.catalog.Product;
var results = new ArrayList();
while (productSearchHits.hasNext()) {
foundProduct = productSearchHits.next();
if (foundProduct.custom.isOnSaleFlag == "true") {
results.add(foundProduct);
}
}
return results;
What should the Developer do to improve the code?
Use a system attribute instead of the isOnSaleFlag custom attribute.
Avoid post-processing and use the isOnSaleFlag attribute as a search refinement.
Breaks the process into separate loops.
Avoid using an Iterator and use a Collection instead.
Universal Containers has expanded its implementation to support German with a locale code of de. The current resource bundle is checkout.properties.
To which file should the developer add German string values?
checkout_de.properties in resources folder
checkout.properties in the de locale folder
checkout.properties in the default locale folder
de_checkout.properties in resources folder
A Digital Developer has a new requirement to disable the "Discover" credit card type for all checkouts.
What does the Developer need to change in Business Manager to fulfill this requirement?
Checkout exclusion rules in the Merchant Tools > Site Preferences > Checkout Preferences module.
Credit card exclusion rules in the Merchant Tools > Site Preferences > Payment Preferences module.
Credit cards in the Merchant Tools > Ordering > Payment Methods module.
Credit card exclusion rules in the CreditCardType.json configuration file.
A Digital Developer needs to store information temporarily and decides to create a custom object.
Which code creates a custom object?
CustomObject.createCustomObject(CustomObjectType,primaryKey);
CustomObject.createCustomObject(primaryKey,CustomObjectType);
CustomObjectMgr.createCustomObject(primaryKey);
CustomObjectMgr.createCustomObject(CustomObjectType,primaryKey)
The following sample code is NOT providing the desired results. The Digital Developer needs to add an entry to the logs to debug the problem.
var paymentInstruments = order.getPaymentInstruments(PaymentInstrument.METHOD_DW_APPLE_PAY).toArray();
var paymentInstruments = order.getPaymentInstruments(PaymentInstrument.METHOD_DW_APPLE_PAY).toArray();
if (!paymentInstruments.length) {
// Log Error Message
return null;
}
var paymentInstrument = paymentInstruments[0];
var paymentTransaction = paymentInstrument.getPaymentTransaction();
Which statement correctly adds a log entry?
Logger.exception('Unable to find Apple Pay payment instrument for order.' + paymentInstruments);
Logger.getErrorLog().log('Unable to find Apple Pay payment instrument for order.' + paymentInstruments);
Logger.fault('Unable to find Apple Pay payment instrument for order.' + paymentInstruments);
Logger.error('Unable to find Apple Pay payment instrument for order.' + paymentInstruments);
Universal Containers wants to give customers the ability to refine product search results by a product custom attribute, weightCapacity.
Which series of steps should a Digital Developer take to show this refinement on the storefront?
Define a sorting rule for weightCapacity, then rebuild the product search index.
Define a search refinement for weightCapacity, then rebuild the product search index.
Define search-suggestion buckets for weightCapacity, then rebuild the product search index.
Define a search refinement for weightCapacity, then clear the page cache segment for Search-Show.
A Digital Developer needs to check for product inventory in a specific inventory list using the Open Commerce API.
An example request URL is:
http://sitegenesis.demandware.net/dw/data/v18_3/inventory_lists/ecom-inventory/product_inventory_records/00883408601
http://sitegenesis.demandware.net/dw/data/v18_3/inventory_lists/ecom-inventory/product_inventory_records/00883408601
Which resource_id value enables the appropriate resource?
/inventory_lists/*
/inventory_lists/**
/inventory_list_search
/products/*
Which three techniques improve client-side performance in production while following documented best practices? (Choose three.)
Use one style sheet for each ISML decorator template.
Place CSS outside of templates.
Compress CSS.
Use inline Javascript.
Combine several images into a single image.
A Digital Developer needs to add logging to the following code:
var Logger = require('dw/system/Logger');
var Logger = require('dw/system/Logger');
var urlEmail = 'https://api.weibo.com/2/account/profile/email.json' + accessTokenSuffix;
http.open('GET', urlEmail);
http.send;
var resultEmail = http.getText();
if (200 !== http.statusCode) {
// Log Invalid Status Code
}
Which statement logs the HTTP status code to a debug-level custom log file?
logger.getLogger('profile').debug("Error retrieving profile email, Status Code: ", http.statusCode);
logger.debug("Error retrieving profile email, Status Code: {0} was returned.", http.statusCode);
Logger.getLogger().debug("Error retrieving profile email, Status Code: {0} was returned.", http.statusCode);
Logger.getLogger('profile').debug("Error retrieving profile email, Status Code: {0} was returned.", http.statusCode);
Which three object types can a developer import using the Merchant Tools > Content > Import & Export module in Business Manager? (Choose three.)
Content slots
Images and other static assets
Products
Folders
Content assets
Universal Containers recently completed updates to their storefront shopping cart page. A problem has been discovered since the update. Users are no longer able to submit coupon codes on this page.
Additionally, authenticated users who try to add a coupon are logged out.
The following processing code is found in the Cart.js controller file:
fun ction (formgroup) {
Additionally, authenticated users who try to add a coupon are logged out.
The following processing code is found in the Cart.js controller file:
fun
var CSRFProtection = require('dw/web/CSRFProtection');
if (!CSRFProtection.validateRequest()) {
app.getModel('Customer').logout();
app.getView().render('csrf/csrffailed');
return null;
}
var result = { cart: cart, EnableCheckout: true, dontRedirect: true };
if (formgroup.couponCode.htmlValue) {
var status = cart.addCoupon(formgroup.couponCode.htmlValue);
// Update result with status of coupon
} else {
result.CouponError = 'COUPON_CODE_MISSING';
}
return result;
}
What should the Developer verify to identify the issue?
The CSRF cartridge is included in the site’s cartridge path.
The form group has the secure attribute set to true.
The CSRF token is present in the form and is being submitted in the request.
The CSRF settings in Business Manager are properly configured.
A Digital Developer wants to selectively retrieve products and process them from an iPhone.
Which action should the Developer take, given that JavaScript controllers CANNOT be used?
Which action should the Developer take, given that JavaScript controllers CANNOT be used?
Use import/export in Business Manager.
Create a webservice to retrieve products.
Use OCAPI and invoke it in native language.
Use WebDAV Client to retrieve products.
A Digital Developer must give users the ability to choose an occasion (holiday, birthday, anniversary, etc.) for which gifts are currently being selected. The data needs to be persistent throughout the current shopping experience.
Which data store variable is appropriate, assuming there is no need to store the selection in any system or custom objects?
Request scope variable
Page scope variable
Session scope variable
Content slot variable
A Digital Developer suspects a logical error in a script.
Which action will help locate the error?
Submit a support ticket to B2C Commerce.
Check request logs for evidence of the logical error.
Put breakpoints in the code, debug, and examine variable values.
Print all values in the script node called before the current script.
Once the Cache Information tool of the storefront toolkit is enabled, how can a Digital Developer view caching information for a particular component of the page?
Hover over the caching icons now present on the storefront.
Open the Request Logs to view the caching information.
Start a pipeline debugging session and view the caching information provided.
Right-click on the component in UX Studio and view the caching properties of the file.
A Digital Developer is working in a sandbox on a site named test-site using the domain test.demandware.net. The Developer needs to compile a url to make an Open Commerce API (OCAPI) request that returns product information.
By default, which URL format is a proper Open Commerce API for Sandbox?
https://test.demandware.com/dw/shop/products/M1355?client_id=aaa...
https://www.test.com/s/test-site/sfc/shop/products/M1355?client_id=aaa...
https://test.demandware.net/s/test-site/dw/shop/v18_3/products/M1355?client_id=aaa...
https://www.test.com/dw/shop/v18_3/products/M1355?client_id=aaa...
A Digital Developer needs to add a new form to the shopping cart page to allow customers to enter their rewards pass ID. There is already an existing Cart.js controller that handles processing of the other cart forms. In addition, a form field node is in the form XML and the necessary form input is present in the ISML template.
The code below is the submit button for the ISML markup.
<button type="submit" value="${pdict.currentforms.cart.addrewardpass.htmlname}" name="${pdict.currentforms.cart.addrewardpass.htmlname}">
<button type="submit" value="${pdict.currentforms.cart.addrewardpass.htmlname}" name="${pdict.currentforms.cart.addrewardpass.htmlname}">
${Resource.msg('rewards.apply', 'locale', null)}
</button>
What additional steps must occur before the Digital Developer can begin writing the processing code for this request?
- Add an <action /> node to the form definition XML with the attribute formid="addRewardPass"
- Add the key addRewardPass, with a processing fun
ction as a value, to the object passed to the Form.handleAction() method in the Cart.js controller
- Add a <submit/> node to the form definition XML with the attribute formid="addRewardPass"
- Add the key addRewardPass, with a processing fun
ction as a value, to the object passed to the Form.handleAction() method in the Cart.js controller
- Add the attribute addtl-form-action="addRewardPass" to the ISML form
- Add the key addRewardPass, with a processing fun
ction as a value, to the object passed to the Form.handleAction() method in the Cart.js controller
- Add an <action /> node to the form definition XML with the attribute formid="addRewardPass"
- No change to Cart.js controller required
Universal Containers is preparing their storefront to use Open Commerce APIs (OCAPI).
To which hook should the Digital Developer move taxation logic to ensure consistent order totals within B2C Commerce?
dw.ocapi.shop.order.validateOrder
dw.ocapi.shop.basket.calculate
dw.ocapi.shop.basket.afterPostShipment
dw.ocapi.shop.order.afterPOST
A digital instance has one site, with one master product catalog separate from the site catalog. Some, but NOT all, products in the master catalog are assigned to categories of the site catalog.
Using Business Manager, how can a Digital Developer create a catalog export file that contains only the products assigned to the site catalog?
Use the Catalog Export module to export the site catalog.
Use the Catalog Export module to export the master catalog, with a category-assignment search to export specific products.
Use the Site Import & Export module to export both the site catalog and the master catalog in a single archive.
Use the Site Import & Export module to export the master catalog, filtered by site catalog categories to export specific products.
A Digital Developer is asked to optimize controller performance by lazy loading scripts as needed instead of loading all scripts at the start of the code execution.
Which statement should the Developer use to lazy load scripts?
importPackage() method
$.ajax() jQuery method
local include
require() method
A Digital Developer is inspecting the weekly service status report for a critical internally-hosted web service used in the application and notices that there are too many instances of unavailability.
Which two solutions are possible options to reduce the unavailability of the service? (Choose two.)
Modify the code that makes the request to the external service to be wrapped in a try-catch block.
Change the code that makes the request to set the throwOnError attribute, of the service, to be true.
Increase the web service time out.
Update the external service to have a faster response time.
A job executes a pipeline that makes calls to an external system.
Which two actions prevent performance issues in this situation? (Choose two.)
Use synchronous import or export jobs.
Configure a timeout for the script pipelet.
Disable multi-threading.
Use asynchronous import or export jobs.
Universal Containers sells physical gift cards for the holidays.
What needs to occur to guarantee the cards will always be available?
Create an inventory record with an unlimited Allocation value.
Create an inventory record with an extremely high Allocation value (i.e., 1 billion certificates).
Create a perpetual inventory record.
Create an inventory record with Backorder Handling enabled.
Universal Containers wants to associate a region code value with an order to indicate the general area of its destination. This region code must be accessible whenever the order history is displayed.
What is required to accomplish this?
Store the region code value in a session variable.
Define a custom attribute on the Order system object type to store the region code value.
Define a custom object type to store the username with the region code.
Store the region code value in the geolocation system attribute of the Order.
A Digital Developer is requesting product information for an external integration.
The following Open Commerce API (OCAPI) request is NOT fun ctioning correctly:
POST /dw/shop/v18_3/products/(creative-zen-v,namco-we-ski-wii)?client_id=aaaa...
HTTP/1.1 Host: example.com
How should the Developer change the request?
Change the URI to /dw/shop/v18_3/products/creative-zen-v.
Change the HTTP method to PUT.
Change the HTTP method to GET.
Include an authentication token in the request.
A Digital Developer has been given a requirement to add fault tolerance to an existing web service integration that uses Service Framework. Administrators at Universal Containers need to be able to configure the timeout and rate limiting.
Which approach should the Developer use to implement the requirement?
Implement a ServiceUnavailableException exception handler to execute fallback code.
Implement a condition that checks to see if the response was empty and execute fallback code if true.
Create a site preference to store timeout settings and implement an IOException handler to execute fallback code.
Use the setTimeout method to execute fallback code if the request has NOT completed.
A Digital Developer noticed that cartridges in their workspace are NOT executing. The Developer confirms that the cartridges are uploaded to the B2C Commerce server connection's target version directory.
Which action potentially solves this problem?
Set the active code version to use the latest compatibility mode.
Remove invalid characters from the code version’s name.
Remove invalid characters from cartridge file and folder names.
Set the server connection’s target version directory to the active code version.
A Digital Developer is implementing an Open Commerce API call to add products to a basket.
Given the following resource configuration:
{
"resource_id": "/baskets/**",
"methods": ["get"],
"read_attributes": "(**)",
"write_attributes": "(**)"
}
Which modification allows the requests to successfully execute?
Change the "resource_id" value to: "/baskets/*/items".
Change the "write_attributes" value to: "(+items)".
Change the "read_attributes" value to: "(items)".
Change the "methods" value to: ["get", "post"].
Which two methods are efficient and scalable? (Choose two.)
ProductMgr.queryAllSiteProducts()
ProductSearchHit.getRepresentedProducts()
ProductSearchModel.getProductSearchHits()
Category.getProducts()
Universal Containers calls the following combination of products "The Basics" and sells the combination as a unique product ID:
- One Model 103 container
- Five Model 611 container
- Tree Model 201 container
The Developer created these three products in the catalog.
What is the next step in Business Manager to create "The Basics" as a combination?
In the Product Bundles module, create a bundle named "The Basics".
In the Products module, create a product named "The Basics" and add the products to the Product Bundles tab.
In the Products module, create a product named "The Basics" and add the products to the Product Sets tab.
In the Product Sets module, create a product set named "The Basics".
A Digital Developer extends a System Object, Product, and adds a Boolean attribute, "sellable" to it. Assuming "prod" is the variable name handling the product, what code can the Developer use to access it?
prod.extended.sellable
prod.sellable
prod.persistable.sellable
prod.custom.sellable
{"name":"Developer Certification", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your skills and knowledge in digital development with our comprehensive certification quiz designed for aspiring and experienced developers alike. This quiz encompasses a range of topics essential for success in the field, ensuring you are well-prepared for real-world challenges.Key features of the quiz:50 detailed questions covering various topicsAssess your understanding of best practicesImprove and validate your knowledge in digital development","img":"https:/images/course7.png"}