user3239711
user3239711

Reputation: 649

Unit tests fails to find the info.plist

When I tried to convert my project from swift 4.1 to 4.2 in xcode 10, I ran into a problem regarding the tests. I never used any unit test (for now!), but the converter failed because the tests do not compile.

The error is :

error: Build input file cannot be found: /Users/xxxxx/Documents/xxx/xxxTests/Info.plist' 

There is actually an info.plist file in the specified directory.

I removed the info.plist path in the Build Settings/Packaging/info.plist.

I can compile, and so, I was able to convert my whole project to swift 4.2. But now, I have the following warning :

'Skipping code signing because the target does not have an Info.plist file. (in target 'xxxTests')'

Can someone help me on this ?

Upvotes: 3

Views: 3575

Answers (3)

Alessign
Alessign

Reputation: 788

You can select the correct plist by navigating to the target > General:

enter image description here

Upvotes: 0

MedMind
MedMind

Reputation: 61

You probably displaced the info.plist file into another group.

You can arrange that by going to the project file > test target > Build Settings and look in search field for "Info.plist" and you replace by the new path.

Upvotes: 1

fewlinesofcode
fewlinesofcode

Reputation: 3082

Test target should contain Info.plist file as well as Application target. It's easy to confuse one for another. You can add Info.plist file manually or delete and recreate Test target. You can save the following code to Info.plist file of your *Test

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDevelopmentRegion</key>
    <string>$(DEVELOPMENT_LANGUAGE)</string>
    <key>CFBundleExecutable</key>
    <string>$(EXECUTABLE_NAME)</string>
    <key>CFBundleIdentifier</key>
    <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>$(PRODUCT_NAME)</string>
    <key>CFBundlePackageType</key>
    <string>BNDL</string>
    <key>CFBundleShortVersionString</key>
    <string>1.0</string>
    <key>CFBundleVersion</key>
    <string>1</string>
</dict>
</plist>

Upvotes: 0

Related Questions