Compilation is directed by what target files are imported into your project. If you open your web project file (open the .csproj as xml) you will see the sdk used is Microsoft.NET.Sdk.Web, while for a unit test project the sdk is Microsoft.NET.Sdk. These SDKs point to folders in c:\Program Files\dotnet\sdk\2.1.4\Sdks\ (or equivalent depending on your setup) that will be used for default imports into your project.
If we dig around a bit into what is included for Microsoft.NET.Sdk.Web that is related to Typescript, we find the following:
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets') AND '$(EnableTypeScriptNuGetTarget)' != 'true'" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.DotNetCore.targets" Condition="Exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.DotNetCore.targets') AND '$(EnableTypeScriptNuGetTarget)' != 'true'" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
If we add these lines inside the Project tag in our unit test project file (.csproj) we will include the necessary build steps for Typescript. You will also get the Typescript property page in your project.
Note I have not tested this extensively but it appears to work, if you have any problems, let me know.